구현 재사용
부모 클래스의 속성과 메서드를 물려받아 공통 동작을 공유합니다.
class Dog extends Animal
extends와 implements는 모두 재사용을 돕지만 하나는 부모 구현을 가져오고 다른 하나는 따라야 할 타입 계약만 강제합니다.
부모 클래스의 속성과 메서드를 물려받아 공통 동작을 공유합니다.
class Dog extends Animal
부모 메서드의 의미를 유지하면서 하위 클래스에 맞게 구현을 바꿉니다.
override speak()
인터페이스가 요구하는 속성과 메서드를 클래스에 강제해 누락 구현을 컴파일 오류로 드러냅니다.
implements Flyable
단순한 사용 약속만 필요하면 상속보다 인터페이스가 더 느슨한 구조를 만듭니다.
interface