- 업캐스팅
package ex02;
public class CastEx01 {
public static void main(String[] args) {
int n1=1;
double d1=1.5;
n1=2;
d1=n1; //업캐스팅
System.out.println(d1);
// n1 = (int) d1; //다운캐스팅
// System.out.println(n1);
}
}
큰 자료형에 작은 자료형을 덮어 씌우는 것을 업캐스팅이라고 한다.

위의 경우 int는 double보다 작으므로 업캐스팅이다.
업캐스팅은 별도의 형변환 작업 없이 자동으로 이루어진다.
묵시적 형변환이라고도 한다.
- 다운캐스팅
package ex02;
public class CastEx01 {
public static void main(String[] args) {
int n1=1;
double d1=1.5;
n1=2;
// d1=n1; //업캐스팅
// System.out.println(d1);
n1 = (int) d1; //다운캐스팅
System.out.println(n1);
}
}
작은 자료형에 큰 자료형을 덮어 씌우는 것을 다운캐스팅이라고 한다.

위의 경우 double은 int보다 크므로 다운캐스팅이다.
다운캐스팅을 하기 위해서는 형변환 작업을 해주어야 한다.
위의 경우에는 double을 int로 형변환 해주어야 한다.
Share article