정적 바인딩
컴파일러가 선언 타입만 보고 호출 대상을 고른다.
바인딩은 어떤 메서드를 실행할지 결정하는 과정이다. 컴파일 시점에 정하면 정적, 실행 시 실제 객체로 고르면 동적이다.
컴파일러가 선언 타입만 보고 호출 대상을 고른다.
실행 중 실제 객체 타입을 보고 오버라이딩 메서드를 고른다.
변수 타입은 사용할 수 있는 메서드 범위를 제한한다.
오버라이딩된 구현은 객체의 실제 타입이 결정한다.
다형성은 이름이 같은 메서드가 아니라 선택 시점의 문제다. 선언 타입과 실제 타입을 분리해서 읽어야 한다.