'Java > 레퍼런스 형변환' 카테고리의 다른 글
레퍼런스 형변환 오버라이딩 적용시 (0) | 2012.04.13 |
---|---|
레퍼런스 형변환 (0) | 2012.04.13 |
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
레퍼런스 형변환 오버라이딩 적용시 (0) | 2012.04.13 |
---|---|
레퍼런스 형변환 (0) | 2012.04.13 |
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
예비 (0) | 2012.04.13 |
---|---|
레퍼런스 형변환 (0) | 2012.04.13 |
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
package com.cast3; public class CastingTest1 { public static void main(String[] args){ FireEngine fe = new FireEngine(); fe.water(); Car car = null; //객체 선언(객체의 주소가 보관될 변수 선언) car = fe; //자식 클래스 타입 -> 부모 클래스 타입 (업캐스팅)자동형변환 //car.water(); FireEngine fe2 = null; fe2 = (FireEngine)car;//부모 클래스 타입->자식 클래스 타입 fe2.water(); //(다운 캐스팅)명시적 형변환 } } class Car{ String color; int door; void drive(){ System.out.println("Drive brrrrr~"); } void stop(){ System.out.println("stop!!!"); } } class FireEngine extends Car{ void water(){ System.out.println("water!!!"); } }
예비 (0) | 2012.04.13 |
---|---|
레퍼런스 형변환 오버라이딩 적용시 (0) | 2012.04.13 |
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
package com.cast2;//레퍼런스 형변환에 오버라이딩적용 //오버라이딩은 다 같지만 전달되는 내용이 다를때 오버라이딩이라함 class Parent3{ String msg="봄"; public void make(){ System.out.println("부모 클래스"); } } class Child3 extends Parent3{ String msg="겨울"; public void make(){ System.out.println("자식 클래스"); } } public class CastEx4 { public static void main(String[] args){ Child3 ch = new Child3(); System.out.println(ch.msg); ch.make(); Parent3 p = ch; //자식 클래스 타입 -> 부모 클래스 타입 //업 캐스팅, 자동형변환 System.out.println(p.msg); //오버 라이딩은 가려지지 않아 자식클래스를 호출하게된다 //무조건 자식클래스를 호출하게됨(형변환을 하더라도) //그래서 출력하려면 super()를 사용해야됨 p.make(); } }
레퍼런스 형변환 오버라이딩 적용시 (0) | 2012.04.13 |
---|---|
레퍼런스 형변환 (0) | 2012.04.13 |
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
업 캐스팅 예제 (0) | 2012.04.13 |
package com.cast3;//슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 class Parent{ public void parentPrn(){ System.out.println("슈퍼 클래스 : parentPrn 메서드"); } } class Child extends Parent{ //메서드 오버라이딩(재정의) public void parentPrn(){ System.out.println("서브 클래스 : 오버라이딩된 parentPrn 메서드"); } public void childPrn(){ System.out.println("서브 클래스 : ChildPrn 메서드"); } } public class RefTest06 { public static void main(String[] args){ Child c = new Child(); c.parentPrn(); Parent p; p=c; //자식 클래스 타입 -> 부모 클래스 타입 //업 캐스팅, 자동형변환 p.parentPrn(); //오버라이딩 되면은 원래 되로 출력되지 않고 서브 클래스가 출력된다 //형변환이 되었더라도 } }
레퍼런스 형변환 (0) | 2012.04.13 |
---|---|
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
업 캐스팅 예제 (0) | 2012.04.13 |
레퍼런스 형변환 (0) | 2012.04.13 |
package com.cast2;//레퍼런스 형변환 예제3 class Parent2{ String msg = "여름"; public String getMsg(){ return msg; } } class Child2 extends Parent2{ String str = "겨울"; public String getStr(){ return str; } } public class CastEx3 { public static void main(String[] args){ Child2 ch = new Child2(); System.out.println(ch.msg); System.out.println(ch.getMsg()); System.out.println(ch.str); System.out.println(ch.getStr()); Parent2 p = ch; //자식 클래스 타입 -> 부모 클래스 타입 //업 캐스팅, 자동 형변환 System.out.println(p.msg); System.out.println(p.getMsg()); /*호출 범위를 벗어나 호출 불가 (부모 영역만 호출 가능) System.out.println(p.str); System.out.println(p.getStr());*/ Child2 ch2 = (Child2)p;//부모 클래스 타입 -> 자식 클래스 타입 //다운 캐스팅 , 명시적 형변환 System.out.println(ch.msg); System.out.println(ch.getMsg()); System.out.println(ch.str); System.out.println(ch.getStr()); } }
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
---|---|
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
업 캐스팅 예제 (0) | 2012.04.13 |
레퍼런스 형변환 (0) | 2012.04.13 |
레퍼런스 형변환(업 캐스팅과 다운 캐스팅) (0) | 2012.04.13 |
package com.cast2;//업 캐스팅 예제 class Parent{ public void parentPrn(){ System.out.println("슈퍼 클래스 : parentPrn 메서드"); } } class Child extends Parent{ public void childPrn(){ System.out.println("서브 클래스 : childPrn 메서드"); } } public class RefTest01 { public static void main(String[] args){ Child c = new Child(); c.parentPrn(); c.childPrn(); Parent p; p=c; //자식 클래스 타입 -> 부모클래스 타입 // 업캐스팅,자동 형변환 (Parent p = c;) p.parentPrn(); //호출 범위를 벗어나 호출 불가 //p.chidlPrn(); } }
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
---|---|
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
레퍼런스 형변환 (0) | 2012.04.13 |
레퍼런스 형변환(업 캐스팅과 다운 캐스팅) (0) | 2012.04.13 |
package com.cast;//레퍼런스 형변환 2 class Parent2{ public void make(){ System.out.println("눈오는 하루"); } } class Child2 extends Parent2{ public void fun(){ System.out.println("즐거운 하루"); } } public class CastEx2 { public static void main(String[] args){ Child2 c = new Child2(); c.make(); c.fun(); Parent2 p =c;//c에 있는것을 p로 넘기기(업 캐스팅) //자식 클래스 타입 -> 부모클래스 타입으로 형변환(자동형변환) p.make(); //호출 범위를 벗어나 호출 불가 //p.fun(); Child2 c2 = (Child2)p;//부모 클래스 타입 -> 자식클래스 타입 //다운 캐스팅,명시적 형변환 //줄어 들었다 다시 늘려야 하기때문에 앞에 명시적 형변환을 하기 위해(Child2)를 명시 c2.make(); c2.fun(); } }
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
---|---|
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
업 캐스팅 예제 (0) | 2012.04.13 |
레퍼런스 형변환(업 캐스팅과 다운 캐스팅) (0) | 2012.04.13 |
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); } }
레퍼런스 형변환에 오버라이딩 적용 (0) | 2012.04.13 |
---|---|
슈퍼 클래스형 레퍼런스 변수로 오버라이딩된 메서드 호출 (0) | 2012.04.13 |
레퍼런스 형변환 예제3(업 캐스팅 , 다운 캐스팅) (0) | 2012.04.13 |
업 캐스팅 예제 (0) | 2012.04.13 |
레퍼런스 형변환 (0) | 2012.04.13 |