package day03;
/**
* 造型: 父类型变量引用子类型实例
* Number: 数
* |-- Integer 整数
* |-- Double 浮点数
* |-- Long
*/
public class Demo06 {
public static void main(String[] args) {
//造型: 自动类型转换, 子类到父类型的转换, 小到大
Integer i = new Integer(5);
Double d = new Double(5.5);
Number n;
n = i;//将引用i造型为Number类型
n = d;
//强制类型转换, 大到小
//成功的转换
Double x = (Double)n; //强制转换为double
//不能成功的转换
Integer y = (Integer)n;//会发生运行异常
//instance 实例 of 的,
//如果 n 是 Integer 的 实例(类型检查)
if(n instanceof Integer){
Integer z = (Integer)n;//类型安全的转换
}
double d1=5.5;
Double d2=new Double(5.5);
}
}
Java面向对象【经典案例】强制/自动类型转换与类型安全的转换
最新推荐文章于 2023-05-22 11:17:42 发布