TIL) Java - 객체의 형변환(업캐스팅과 다운캐스팅)

oatraspberry·2022년 12월 9일
post-thumbnail

객체의 형변환(업캐스팅과 다운캐스팅)

상속관계에 있는 경우 객체도 타입변환이 가능
업캐스팅은 항상 가능: 생략시 컴파일러에 의해 자동캐스팅
다운캐스팅은 때에 따라서 가능/불가능: 가능한 경우에만 수동으로 직접 캐스팅 필요
다운캐스팅이 가능하기 위해서는 Heap 메모리 내에 해당 객체가 있어야 함

다운캐스팅 가능 여부 확인

참조변수 instanceof 타입 - true / false

A a = new B();
if ( a instanceof B ) { // true
	B b = (B)a;
}
A a = new A();
if( a instance of B ) { // false
	B b = (B)a;
}
profile
개발자가 될테야

0개의 댓글