CH8-2 · FLOW

오버라이딩과 동적 디스패치 예제가 실행되는 순서

정적 타입으로 호출 가능 메서드 검사에서 시작해 하위 전용 동작은 패턴 검사 뒤 사용까지 값과 책임이 이동한다.

  1. 1
    정적 타입으로 호출 가능 메서드 검사

    메서드 이름이나 매개변수를 잘못 쓰면 새 메서드가 생길 수 있습니다.

  2. 2
    실제 객체의 재정의 구현 선택

    Animal 변수에서는 Animal이 선언한 메서드만 바로 호출할 수 있습니다.

  3. 3
    하위 전용 동작은 패턴 검사 뒤 사용

    재정의된 인스턴스 메서드는 런타임의 가장 구체적인 구현이 실행됩니다.

실행 순서 format은 실제 Warning 구현이 실행되지만 color 호출 가능성은 Message라는 정적 타입으로 검사됩니다.