Java多态(动态多态)

  动态多态是什么?多态(Polymorphism)按字面的意思就是“多种状态”。在面向对象语言中,接口的多种不同的bai实现方式即为多态。引用Charlie Calverts对多态的描述——多态性是允许你将父对象设置成为一个或更多的他的子对象相等的技术,赋值之后。

中有向上转型向下转型

 1.向上转型:父类引用指向子类对象

语法格式: 父类  对象名 = new 子类(参数列表);

图片[1]-Java多态(动态多态)-明恒博客

这个是子类和父类↑↑

图片[2]-Java多态(动态多态)-明恒博客

这个是输出列表

上面需要主要的是:na.p();这个是可以正常的输出的;

但是na.pr();这个是值的子类中的,父类中没有所有会报错

向上转型的主要输出的是父类的方法;

  2.向下转型:父类对象转换为子类对象

语法格式:子类  对象名 = (子类名)父类;

向下转型的语法格式和强自转换很像。

向下转型需要配合向上转型来使用;

图片[3]-Java多态(动态多态)-明恒博客

这个是子类和父类↑↑

图片[4]-Java多态(动态多态)-明恒博客

↑↑这个是输出

在用了向下转型之后,把父类强制转换成子类。

这样子类也可以使用本身和父类的方法。

向上转型是安全的 向下转型却不一定是安全的。
向下转型成为强制类型转换 其意思是从父类转为子类 转了后你可以拥有更多的方法 因为子类通常有比父类更多的方法。
向上转型称为抽象,抽象的内容将在下一个内容讲。

© 版权声明
THE END
我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=270198dipw4ko
点赞4 分享
评论 共2条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片