추상클래스

    [Effective Java] 추상 클래스보다 인터페이스를 우선하라

    인터페이스의 장점 상속이 여러개 가능하기 때문에 믹스인이 가능하다. 계층구조가 불분명한 클래스들을 설계하기 유리하다. 래퍼 클래스와 함께 사용하면 인터페이스 기능을 향상 시키는 안전하고 강력한 수단이 된다. 구현이 명백한 것은 인터페이스의 디폴트 메서드를 사용해 프로그래머의 일감을 줄일 수 있다. default 메서드 인터페이스를 상속하면 인터페이스에 정의된 모든 메서드들을 구현해야 한다. 하지만 많은 외부 클래스가 이미 이 인터페이스를 사용하고 있다면 중간에 메서드를 삽입하는 것이 쉽지 않다. 이때, default 메서드를 이용할 수 있다. 구현이 명백한 것, 공통된 것은 인터페이스의 디폴트 메서드를 사용해 정의함으로써 인터페이스를 상속하여 사용할 프로그래머의 일감을 줄일 수 있다. 추상 클래스 자바8..