码迷,mamicode.com
首页 > 编程语言 > 详细

Java复习笔记3--强制类型转换

时间:2016-09-06 22:50:16      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

强制类型转换

  • 基本数据类型

  • 引用数据类型

 在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需要强制转换。因为子类拥有比父类更多的属性、更强的功能,所以父类转换为子类需要强制。那么,是不是只要是父类转换为子类就会成功呢?其实不然,他们之间的强制类型转换是有条件的。

Father father = new Son();

      在这里Son 对象实例被向上转型为father了,但是请注意这个Son对象实例在内存中的本质还是Son类型的,只不过它的能力临时被消弱了而已,如果我们想变强怎么办?将其对象类型还原!

      Son son = (Son)father;

当引用类型的真实身份是父类本身的类型时,强制类型转换就会产生错误。

Father father = new  Father();

      Son son = (Son) father;

   这个系统会抛出ClassCastException异常信息。

 

 

Java复习笔记3--强制类型转换

标签:

原文地址:http://www.cnblogs.com/zhouQing17/p/5847191.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!