일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드
- 이클립스
- 국제화
- 배열
- JavaScript
- Java
- paint
- AWT
- 전화걸기
- 기본
- HTML
- 예외처리
- Spring
- 생성자
- 에러페이지
- 메서드
- mybatis
- 오버로딩
- 클래스
- struts2
- Menu
- Android
- Eclips
- oracle
- layout
- 어노테이션
- Graphic
- OGNL
- JSP
- 메소드
- Today
- Total
목록자바/레퍼런스 형변환 (8)
note
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.ou..
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..
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[] ar..
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.ge..
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..
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.fu..
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); 호출 범위를 벗어나 호출..