Java面向对象三大特征之一 多态

一、可以把不同的子类对象都当作父类来看多态的前提1:是继承多态的前提

2:要有方法的重写
父类引用指向子类对象,如:Animal a = new Cat();
多态中,编译看左边,运行看右边

二、多态是什么?

多态是同一个行为具有多个不同表现形式或形态的能力。
比如我们说“宠物”这个对象,它就有很多不同的表达或实现,比如有小猫、小狗、蜥蜴等等。那么我到宠物店说“请给我一只宠物”,服务员给我小猫、小狗或者蜥蜴都可以,我们就说“宠物”这个对象就具备多态性。

三、多态的应用

使得对象的调用变得简单,不用再每个对象每个对象的去调用,而是一次性调用所有对象去执行。

 

四、注意事项

 一.多态中,子父类出现同名变量、同名(static)静态方法时,调用时只看引用。同名非静态函数只看实体。 
 

五、多态的弊端。
 提高了扩展性,但是只能使用父类的引用访问父类中的成员。

 六、多态的前提。
 必须是类与类之间的关系,要么继承要么实现。
 通常还有一个前提,存在覆盖。 

七、多态的好处。
  抽象类和接口不能实例化,所以可以通过多态,进行向上转型,将子类实例赋给父类或者接口的引用。提高了程序的扩展现

1)可替换性:多态对已存在代码具有可替换性

2)可扩充性 多态对代码具有可扩充性。增加新的子类不影响已存在类的多态性、继承性,以及其他特性的运行和操作。实际上新加子类更容易获得多态功能

个人总结:

使用多态可以跟快捷的去调用所有对象

使用多太能大大增加了java程序的可扩展性。

使其更方便更快捷 

有利与弊  

 

 

 

 

 

你可能感兴趣的:(java)