IT/Programming / / 2023. 4. 27. 09:43

<Effective Java> RULE 18 추상 클래스 대신 인터페이스를 사용하라

반응형

 

추상 클래스

- 구현된 메서드를 포함할 수 있다.

- 추상클래스가 규정하는 자료형을 구현하기 위해서는 추상 클래스를 반드시 계승해야 한다

- 자바는 다중상속을 허용하지 않기 때문에 추상클래스로 자료형을 사용하는데에는 많은 제약이 있다.

인터페이스

- java 1.8부터 default메서드를 통해 인터페이스에서도 구현을 포함할 수 있다.

- 인터페이스에 포함된 모든 메서드를 정의하고 인터페이스가 규정하는 일반 규약을 지키기만 하면 되며 그렇게 만든 클래스는 클래스 계층에 속할 필요가 없다.

 

인터페이스의 장점

- Mix-IN을 정의하는데 이상적이다. (주 자료형 이외에 추가적으로 구현할 수 있는 자료형)

- 비 계층적인 자료형 프레임워크를 만들 수 있도록 한다.

- Wrapper 클래스 숙어를 통해 안전하면서도 강력한 기능 개선이 가능하다.

 

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유