abstract 클래스와 interface (2)


abstract 클래스와 interface (2)

Basic JAVA abstract 클래스와 interface (2) 루크 2016. 11. 10. 19:37 이웃추가 본문 기타 기능 인터페이스의 목적을 알아 보기 전에 그림 하나를 먼저 보고 가겠다. 다시 한 번 상속의 관계를 잘 생각해 보면서 그림을 살펴보자. SmartTV는 TV를 상속하고 있고, SmartWatch는 Watch를 상속하고 있다. SmartTV는 TV의 기능을 확장하였고, SmartWatch는 Watch의 기능을 확장할 수 있겠다. 그리고 SmartTV와 SmartWatch는 모두 playMP3() 기능이 가능하다. 이럴 땐 어떻게 해야할까? 바로 인터페이스를 사용하면 된다. 자바에서 다중 상속은 불가능 하다. 이유는 상위클래스의 공통된 기능이 있을 경우 하위 클래스에서 호출할 때 애매한 부분이 있기 때문이다. 인터페이스를 사용하면 다중상속이 없는 부분을 해소할 수 있다. 하지만 단순히 다중상속의 문제를 해결하기 위해 인터페이스를 사용한다고 생각하면 안된다. ...



원문링크 : abstract 클래스와 interface (2)