文章 > java基础 > java基础中的多态是什么?如何实现?

java基础中的多态是什么?如何实现?

java基础多态 java基础 多态

头像

小妮浅浅

2021-04-22 09:38:023705浏览 · 0收藏 · 0评论

我们在实现一种程序运行时,可以选择不同的数据输入其中,当然这样最后输出的结果也是不一样的。这就是多态的思想,跟我们数学中输入不同数字到公式中产出不同结果是一个道理。

一、定义

多态是指的是事物的多种状态,同一操作,由于条件的不同,所以产生的结果也不同。

例如在程序中同一引用类型,由于实例的不同,产生的结果也会不同。

二、说明

1、多态是方法的多态,多态和属性是没有半毛钱的关系的。

2、多态存在的3个必要条件:

(1)、必须得有继承关系

(2)、子类必须重写了父类的方法

(3)、父类的引用指向子类对象

3、父类的引用指向子类对象,用该父类的引用调用子类重写的方法,此时多态就出现了

三、实例

public class Test01 {
public static void main(String[] args) {
// 同一引用
Pet pet = null;
// 由于实例不同
pet = new Dog("旺财", 90, 80, "土狗");
// 对同一操作产生的结果不同
pet.eat();
// 由于实例不同
pet = new Penguin("小白", 90, 90, Penguin.GENDER_MAN);
// 对同一操作产生的结果不同
pet.eat();
}
}
//我们把Dog,Penguin对Pet的eat方法呈现多态。

四、多态调用的注意事项

编译:成员变量,成员方法都需要看父类;父类没有编译报错;

运行:成员变量运行父类的成员变量,成员方法运行父类重写的方法

五、多态的好处与弊端

好处:多态配合继承子类重写,提高了代码的复用性与扩展性

弊端:不能调用子类特有的方法

以上就是我们在java中对于多态内容的学习,当然这只是初步的了解,在后期文章中我们会进一步对多态展开深入的学习。

推荐操作环境:windows7系统、java10版,DELL G3电脑。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!