추상 클래스와 인터페이스는 공통 상태 제공 여부가 다르다

둘 다 타입 계약이지만 하나는 관련 객체의 상태·생성 기반을, 다른 하나는 여러 계층에 붙일 수 있는 역할을 표현합니다.

abstract class

필드·생성자·공통 구현 · 단일 계층

interface

역할 계약 · 여러 개 구현 · 관련 없는 타입에도 적용

핵심: 공통 상태 부모와 독립 역할 인터페이스를 조합해 단일 상속 한계와 능력 분리를 함께 다룹니다.