java基础之对象的向上转型和向下转型-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

java基础之对象的向上转型和向下转型

简介: 格式:对象的向上转型就是多态写法:父类名称 对象名=new 子类名称();——>父类引用指向子类对象

对象的向上转型

格式:对象的向上转型就是多态写法:父类名称 对象名=new 子类名称();——>父类引用指向子类对象

含义:右侧创建一个子类对象,把它当做父类来使用

注意:向上转型一定是安全的,从小范围转向了大范围

弊端:一旦向上转型为父类,就无法使用子类特有方法;如果想使用,则需要用对象的向下转型(还原)

对象的向下转型

格式:子类名称 对象名=(子类名称) 父类对象

含义:将父类对象还原为本来的子类对象

Animal animal=new Cat();//本来是猫,向上转型为动物

Cat cat=(Cat)animal;//本来是猫,已经被当做是动物,还原回来成为本来的猫

注意:

  1. 必须保证对象原来创建的时候就是猫,才能向下转型成为猫
  2. 如果对象创建的时候不是猫,现在非要向下转型成为猫,就会报类转换异常:ClassCastException


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: