黑马程序员技术交流社区
标题:
类类型转知识与报错情况总结
[打印本页]
作者:
zhangyuren
时间:
2016-10-29 23:08
标题:
类类型转知识与报错情况总结
正确:
//一个动物类对象是狗,可以转换成狗类
Animal a = new Dog();
Dog d = (Dog)a;
//一个动物类对象是猫,可以转化成猫类
Animal a = new Cat();
Cat c = (Cat)a;
错误:
//一个狗类对象是动物,不可以
Dog dd = new Animal();
**编译时就报错 提示:不兼容的类型
//一个狗类对象是猫,不可以
Dog ddd = new Cat();
**编译时就报错 提示:不兼容的类型
/*
一个动物类对象是猫
动物类对象向下转型成猫类
再想转型成狗类
*/
Animal a = new Cat();
Cat c = (Cat)a; //a对象的堆内存空间是Cat类型数据
Dog dd = (Dog)a; //a对象的堆内存就无法向下转型成Dog类型
**编译时不报错,运行时报错 提示:ClassCastException:类转换异常
作者:
一小丢丢
时间:
2016-10-29 23:14
嗯,不错
作者:
黑马初学者
时间:
2016-10-30 00:30
可以的,加油
作者:
Kevin_Ye
时间:
2016-10-30 10:06
感谢分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2