class Acast { int a=1;}
class Bcast extends Acast{ int b=2;}
class Ccast extends Bcast{ int c=3;}
public class TestCast {
	public static void main(String[] args) {
		Acast refA;
		refA = new Ccast();
		//접근 범위 파악 1
		System.out.println("refA.a의 값은 "+refA.a);
		//System.out.println("refA.a의 값은 "+refA.b); 
		//System.out.println("refA.a의 값은 "+refA.c);
		//접근 범위 파악 2
		//Ccast cc = refA; 
		Ccast cc = (Ccast)refA; //강제형변환
		System.out.println("refA.a의 값은 "+cc.a);
		System.out.println("refA.a의 값은 "+cc.b); 
		System.out.println("refA.a의 값은 "+cc.c);
		//접근 범위 파악 3
		Bcast bb;
		bb = new Bcast();
		System.out.println("refA.a의 값은 "+bb.a);
		System.out.println("refA.a의 값은 "+bb.b); 
		//System.out.println("refA.a의 값은 "+bb.c);
		//System.out.println("refA.a의 값은 "+((Ccast)bb).c); //어쨋든 맴버가 아니므로
		Ccast c1;
		//c1 = new Bcast();
		Bcast b1 = new Bcast();
		//c1 = b1;
		//c1 = (Ccast)b1;//어쨋든 맴버가 아니므로
	}
}
'새로워지기 > 서른의 생활코딩' 카테고리의 다른 글
| ex13) java_oop (0) | 2012.02.21 | 
|---|---|
| ex12) java_oop (0) | 2012.02.21 | 
| ex10) java_oop (0) | 2012.02.21 | 
| java _20120220 (0) | 2012.02.20 | 
| ex9) java_oop (0) | 2012.02.16 | 
댓글