추상 클래스와 인터페이스의 선택 기준을 나란히 비교한다
비교 항목: 추상 클래스는 공통 상태와 골격을 가진다 / 한 클래스는 여러 역할을 조합할 수 있다 / default 메서드는 인터페이스 진화를 돕는다
| 확인 질문 | 판단 근거 | 코드에서 드러낼 것 |
|---|---|---|
| 추상 클래스는 공통 상태와 골격을 가진다 | 직접 객체를 만들 수 없지만 필드, 생성자, 구체 메서드와 추상 메서드를 함께 선언합니다. | 타입과 시작값 |
| 한 클래스는 여러 역할을 조합할 수 있다 | 클래스 상속은 하나지만 인터페이스는 여러 개 구현할 수 있습니다. | 실패 또는 변경 경계 |
| default 메서드는 인터페이스 진화를 돕는다 | 인터페이스에 공통 동작을 추가할 때 기존 구현을 깨뜨리지 않을 수 있지만 상태를 소유하는 용도로 쓰지 않습니다. | 선택한 규칙의 결과 |
선택 기준 인터페이스에 공통 동작을 추가할 때 기존 구현을 깨뜨리지 않을 수 있지만 상태를 소유하는 용도로 쓰지 않습니다.