직접 생성 불가
공통 속성과 메서드를 두되 일부 동작은 자식 클래스가 구현하게 합니다.
abstract render(): void
추상 클래스는 일부 구현을 공유하며 상속 계층을 만들고, 인터페이스는 구현 없이 필요한 형태만 약속합니다.
공통 속성과 메서드를 두되 일부 동작은 자식 클래스가 구현하게 합니다.
abstract render(): void
여러 자식 클래스가 공유할 로직이나 상태 초기화를 부모에 둡니다.
protected state
구현 세부사항 없이 필요한 속성과 메서드 이름을 정합니다.
interface Drawable
한 클래스가 여러 인터페이스를 구현해 기능 집합을 조합할 수 있습니다.
implements A, B
추상 클래스와 인터페이스의 차이는 타입 문법보다 코드 재사용과 결합도를 어떻게 관리할지의 문제입니다.