타입 확인
변수의 선언 타입과 실제 생성 객체 타입을 나눠 본다.
참조 타입과 실체 분리객체지향은 용어 암기보다 호출 대상이 언제 결정되는지 보는 문제가 많다. 클래스, 객체, 상속, 오버라이딩, 다형성을 메모리와 호출 흐름으로 묶어 판별한다.
변수의 선언 타입과 실제 생성 객체 타입을 나눠 본다.
참조 타입과 실체 분리상속 계층에서 같은 이름, 같은 시그니처가 있는지 확인한다.
오버로딩과 구분정적 바인딩은 컴파일 시점, 동적 바인딩은 실행 시점 객체가 결정한다.
virtual/override 맥락외부 접근은 공개 메서드로 제한하고 내부 상태 변경 조건을 클래스가 지킨다.
필드 공개는 위험