ruijiege

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

 

多态(多种形态)的定义

同一消息对不同类的对象做出的不同响应

种类

在程序设计中一般说多态都是运行时多态

多态施行的条件:

1满足继承关系

2父类引用指向子类对象(向上转型)

向上转型 

向下转型(子类引用指向父类对象,此处必须进行强转,可以调用子类特有的方法,必须满足条件才能强转)

所以只有满足下列条件的才能强转

Animal one=new Cat();

Cat cat=(Cat)two;

instanceof运算符(返回得为boolean)

判断左侧对象是否满足右侧类型对象的特征;这里右侧为Animal和Object都为正确;

案例

一样的

抽象类 (解决程序逻辑性:比如父类只是一个模板,我们用的基本都是子类的方法为了防止在程序中出现逻辑错误)

实现abstract关键字:不能实列化该类的实列了;如果要使用只能使用;向下转型;

应用场景:

 

 抽象方法(为了提醒父类的该方法必须在子类中重写:定义的时候不能有具体实现)

抽象类和抽象方法的使用规则(个人觉得abtract关键字其实就是提示的作用让程序员少犯错误)

1包含抽象方法的类必须为抽象类

2抽象类不一定需要有抽象方法

 

多态在程序设计中的优势

Java中如何实现多态

实列

 

posted on 2019-04-13 19:06  哦哟这个怎么搞  阅读(143)  评论(0编辑  收藏  举报