default method가 interface를 진화시키는 경로

기존 구현 class를 깨지 않고 새 공통 동작을 제공한다.

  1. 기존 interface

    구현해야 할 추상 method가 있다

    version 1
  2. default 추가

    body를 가진 새 method를 선언한다

    version 2
  3. 기존 구현

    재컴파일 없이 기본 동작을 상속한다

    compatible
  4. 선택적 override

    필요한 class만 동작을 바꾼다

    custom

핵심: default method는 상태를 저장하지 않으며 interface 계약을 무제한 확장하는 수단이 아니다.