引用数据类型之间的转换 [Java]
引用数据类型之间的转换
1.引用数据类型转换和基本数据类型转换一样也是分为两种:
第一种:自动类型转换
第二种:强制类型转换
自动类型转换:自动类型转换主要是指从小范围到大范围的转换
强制类型转换:主要是指从大范围到小范围的转换(也就是父类到子类的转换)
如果是小转大则不能使用强制类型转换,使用了就会编译出错
2.引用类型的转换必须要是发生在自己和自己或者父子类之间(也可以是爷孙关系,也就是必须要有继承关系,如果没有继承关系的话就会报错)
3.强制类型转换当中如果转换到的类型时引用指向的子类类型,但不是引用指向的真正的子类的类型的话,则编译通过,运行阶段会出现类型转换异常
eg:Person p=new Worker();
Student s=(Student)p;
这里编译的通过的(因为Student类是Person类的子类),但是运行时会发生引用类型的类型转换异常(因为这里的new对
版权声明:
作者:zhangchen
链接:https://www.techfm.club/p/15110.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。
THE END
二维码
共有 0 条评论