JAVA

[JAVA] 클래스 타입변환

(งᐛ)ว 2023. 8. 26. 00:36
728x90

형변환(Casting) : 자료형을 다른 자료형으로 타입변환 

 

클래스의 자동 타입변환 : 상속관계의 자식클래스의 객체를 부모클래스의 객체로 변환하는 것 (이중상속도 가능)

부모클래스 객체명 = new 자식클래스();  

자식객체를 미리 만들었다면 

부모클래스 객체명 = 자식객체;

 

Parent p1 = new Parent(); //부모객체생성

Child c1 = new Child(); //자식객체생성

 

Parent p2 = new Child(); //자동타입변환

Parent p3 = c1//자동타입변환

 

 

 

**자식타입에서 부모타입으로 변환하면...

부모클래스 메서드 사용 가능 

자식클래스에만 있던 메서드는 사용 불가

부모클래스의 메서드를 오버라이딩한 경우 호출 가능 

 

 

 

 

클래스의 강제 타입변환 : 부모타입으로 변환했을때 자식클래스 메서드에는 접근할 수 없으므로 다시 자식타입으로 변환해야한다. 

메서드 한개만 접근하는 경우 

((자식클래스)부모타입객체) . 메서드명();  ex.((DeskCalendar)c).onTheDesk();

전체에 접근하는 경우

자식클래스 객체명 = (자식클래스) 부모객체;

 

 

 

 

 

728x90