원본 본문으로 이동하기

인터페이스와 추상클래스

박용서 - 공통점 - 상속받아 구현하지 않은 상태로 인스턴스를 만들 수 없다. 추상 클래스 (abstract class) - 다중으로 상속 받아 사용할 수 없다. - 일반적인 클래스와 같지만 완성되지 않은 클래스로 추가적인 구현을 하여 사용하는 용도가 될 수 있다. - 상속 사용을 강제화 하는 용도로 사용할 수 있다. 인터페이스 (interface) - 다중으로 상속 받아 사용할 수 있다. - 클래스와 달리 구현된 몸체가 없으며, 오직 추상적인 선언만 존재한다. (물론 Java 8 에서 디폴트 메서드가 추가되어 자바의 클래스 다중상속이 되지않는 문제를 해결하려고 했다. : 즉 추상처럼 몸체를 쓸 수 있지만 순수한 인터페이스와는 다르게 봐야한다.) - 주로 규약을 만드는 용도이다. - 규약(선언부)을 이용하여, 표준화가 가능하다 (예를들어 JDBC의 Connection, Statement 등...) - 콜백 같은 규약으로도 사용할 수 있다. - 다중 상속을 할 수 있기 때문에 서로 다른 클래스에 관계적인 구심점이 될 수 있다. - 이론 자바