다양한 형태의 성질을 지님
상속 + 컴퓨터 연산규칙(같은 자료형끼리만 연산 가능) + 얕은복사
중요포인트!!
상속을 이용한 기술로 부모 클래스 타입 참조변수 하나로
상속 관계에 있는 여러 타입의 자식 객체를 참조할 수 있는 기술
부모클래스 변수면 = new 자식클래스( );
<클래스 형변환>
업캐스팅( Up Casting)
상속 관계에 있는 부모, 자식 클래스 간에 부모타입의 참조형 변수가
모든 자식 타입 객체의 주소를 참조할 수 있음
Car c = new Sonata();
부모 = 자식
부모 객체 c가 자식 객체 사용가능
다운캐스팅(Doun Casting)
자식 객체의 주소를 받은 부모 참조형 변수를 가지고 자식의 멤버를 참조해야 할 경우,
부모 클래스 타입의 참조형 변수를 자식 클래스 타입으로 형변환 하는것
자동으로 처리되지 않기 때문에 반드시 자식 타입을 명시하여 형변환
상속 다형성의 궁극적 목적?
중복되는 코드 제거해서 전체적인 코드길이 감소
바인딩
실제 실행항 메소드 코드와 호출하는 코드를 연결 시키는것
-정적 바인딩
프로그램이 실행되기전 컴파일 단계에서 메소드와 메소드 호출부를 연결
-동적 바인딩
컴파일 시 정적 바인딩된 메소드를 실행할 당시의 객체 타입을 기준으로 바인딩 되는 것