继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

多态中的向上向下转型问题

夏J
关注TA
已关注
手记 1
粉丝 7
获赞 8

无论是上转还是下转的目的:使类的使用范围和适用范围发生变化,以便操作不同范围的变量或者方法。
1.上转型是指将子类对象使用父类引用进行引用(动物 a=new 狗();)。
优点:上转型对象可以操作和使用子类继承或者重写的方法(父类引用指向子类对象)。
缺点:上转型对象丧失了对子类新增成员变量或新增的方法的操作和使用。

2.下转型与向上转型相反,即是把父类对象转为子类对象(强制转换)(动物 a=new 动物();狗 b=(狗)a;):
优点:下转型对象可以操作子类自己的方法(包括重写父类的方法)和父类未被重写的方法
缺点:父类指向子类引用对象会遗失除与父类对象共有的其他方法,也就是在转型过程中,子类的新有的方法都会遗失掉,在编译时,系统会提供找不到方法的错误
<总结>
覆盖的方法,Java表现出多态性,会调用更具体的子类里面的方法,无论 从哪里调用,无论使用什么引用类型调用。
向上转型总是安全的

打开App,阅读手记
2人推荐
发表评论
随时随地看视频慕课网APP