package com.cast;//레퍼런스 형변환 업캐스팅, 다운캐스팅
//레퍼런스 형변환은 부모와 자식간의 관계에서만 가능
class Parent{
int a=100;
}
class Child extends Parent{
int b=200;
}
public class CastEx {
public static void main(String[] args){
Child c = new Child();
System.out.println(c.a);
System.out.println(c.b);
Parent p = c; //자식 클래스 타입 -> 부모 클래스 타입으로
//업 캐스팅, 자동적으로 형변환
System.out.println(p.a);
/*System.out.println(p.b);
호출 범위를 벗어나 호출 불가*/
//child는 전체를 호출할 수 있지만
//parent는 child 영역을 호출 할 수 없기에 오류남
//호출 하기 위해 다시 형변환
Child c2= (Child)p;//부모 클래스 타입 -> 자식클래스 타입
//다운 캐스팅, 명시적으로 형변환
System.out.println(c2.a);
System.out.println(c2.b);
}
}