제로의영역

8장 인터페이스 연습문제 본문

C#

8장 인터페이스 연습문제

아이큐제로 2019. 6. 26. 18:27

* 본 블로그 글은 머리가 아~~~주 나쁜 왕X100초보가 프로그래밍을 공부하면서 정리를 위해 작성하는 글입니다. 잘못 정리되거나 제가 잘못 이해한 글은 이해 및 조언 부탁드립니다.

* 공부는 '이것이 C#이다' 책을 보고 하고 있습니다. 참고로 저같은 왕초보가 보기 어렵게 써져 있어서 별도의 정리 문서를 만들게 되었습니다.

 

1. 문제: 인터페이스와 클래스가 다른 점은 무엇입니까?

  인터페이스 클래스
상속 다중상속 가능 한 클래스만 상속
구현 가능 기능 메소드, 이벤트, 인덱서, 프로퍼티 필드, 메소드, 이벤트, 프로퍼티
한정자 사용불가능하며 public으로 선언 상황에 따라 다 사용가능
구현 구현부 없음 구현부 존재
인스턴스 만들 수 없음 생성 가능
선언 interface키워드 사용 class 키워드 사용
파생클래스 구현 부모(?) 인터페이스의 모든 기능 구현 부모 클래스의 기능 중 일부만 구현 가능

2. 문제: 인터페이스와 추상 클래스가 다른 점은 무엇입니까?

  인터페이스 추상 클래스
상속 다중상속 가능 한 클래스만 상속
구현 가능 기능 메소드, 이벤트, 인덱서, 프로퍼티 추상메소드, 추상 프로퍼티
한정자 사용불가능하며 public으로 선언 사용가능하며 사용하지 않을 때 private으로 선언
구현 구현부 없음 구현부 존재
인스턴스 만들 수 없음 만들 수 없음
선언 interface키워드 사용 abstract키워드 사용
파생클래스 구현 부모(?) 인터페이스의 모든 기능 구현

추상메소드는 강제적으로 구현해야하며

override를 사용하여 구현함.