티스토리 뷰

레퍼런스 형변환

- 레퍼런스 타입끼리의 형변환(상속 관계에서만 사용 가능)

- 레퍼런스(변수)를 사용하여 다른 타입의 인스턴스(객체)를 참조하기 위해 변환

 

업캐스팅

서브클래스의 인스턴스를 슈퍼클래스 타입으로 변환, 자동형변환이 일어난다

 

다운캐스팅

슈퍼클래스의 인스턴스를 서브클래스 타입으로 변환, 명시적(강제)형변환을 해야한다.

실행시점에서 오류 발생할 수 있음. 사실상 업캐스팅이 이전에 되어야만 가능하다.

 

public class 연습 {

	public static void main(String[] args) {

	A a = new A();
	B2 b2 = new C4();	// 업캐스팅
	a = b2;			// 업캐스팅
	b2 = (B2)a;		// 다운캐스팅
}

}
class A {}
class B1 extends A{}
class B2 extends A{}
class C1 extends B1{}
class C2 extends B1{}
class C3 extends B2{}
class C4 extends B2{}

 

insteanceof 연산자

상속관계인지 아닌지 판별하는 연산자

'배운 것 기록 > java' 카테고리의 다른 글

interface  (0) 2022.06.08
abstract 추상화  (0) 2022.06.07
super, final  (0) 2022.06.01
상속  (0) 2022.05.31
Scanner  (0) 2022.05.30
댓글
최근에 올라온 글
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함