클래스 상속과 인터페이스 구현의 차이 #2
근래 제 블로그에 "클래스 상속과 인터페이스 구현의 차이"를 검색해서 들어오는 사례가 많아서 해당 글을 다시 한 번 정리합니다. (원글은 http://ryulib.tistory.com/76 에 있습니다.) 기본적인 개념 설명 결론부터 말한다면, 클래스 상속은 is-a 관계를 나타냅니다. 인터페이스 구현은 can-do 관계를 나타냅니다. 그리고, is-a 관계는 태생부터 무엇인가 기질을 타고 난 경우를 말합니다. 부모가 황인종이기 때문에 저도 황인종입니다. 이것은 상속 받은 유전적이며 선천적인 형질입니다. 저는 태어나면서부터 프로그래밍을 할 줄 알았던 것은 아니지만, 지금은 할 줄 알고 있습니다. 이런 후천적인 형질은 can-do 관계라고 할 수 있습니다. [그림 1] [그림 1]을 보면 "자식"은 부모에..
소프트웨어 공학
2013. 12. 12. 21:42