龙空技术网

大数据编程入门:Java多态

用友BIP张衡 59

前言:

眼前咱们对“java的虚方法”大致比较关怀,小伙伴们都想要分析一些“java的虚方法”的相关内容。那么小编在网络上网罗了一些有关“java的虚方法””的相关内容,希望我们能喜欢,同学们快快来了解一下吧!

多态性是面向对象程序设计代码重用的一个重要机制,今天小编为大家带来大数据编程入门:Java多态这篇文章。

一、什么是多态

1、多态的概念

多态是指同一行为具有多种不同形式或形态的能力。

多态性是使用不同实例执行不同操作的相同接口,如下图所示:

多态性是对象的各种形式的体现。

比如在生活中,我们喝水这个事件,有的人喜欢喝冷水,而有的人则喜欢喝热水。

又比如我们在键盘上按下“W”这个键,在许多游戏中就是前进的指令,在word中则是在屏幕上打印出“W”这个字母。

同一件事在不同的对象上会产生不同的结果。

2、多态的优点

① 消除类型之间的耦合关系

② 可替换性

③ 可扩充性

④ 接口性

⑤ 灵活性

⑥ 简化性

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

① 继承

② 重写

③ 父类引用指向子类对象:Parent p = new Child();

使用多态方法调用方法时,首先检查父类中是否存在该方法,如果不存在,则编译错误;如果是这样,请使用相同的名称调用子类方法。

多态性的优点:可以使程序具有良好的扩展性,可以处理各种对象。

下面是一个多态实例的演示,详见代码中的附注:

运行结果:

二、虚函数

多态性存在虚拟函数。

事实上,Java中没有虚拟函数的概念,它的普通函数相当于C++的虚拟函数,动态绑定是Java的默认行为。如果不希望函数在Java中具有虚拟函数的属性,可以添加最后一个关键字,使其成为非虚拟函数。

重写

我们将介绍在Java中设计类时重写方法的行为如何影响多态性。

方法重写,即子类可以重写其父类的方法。

当子类对象调用重写方法时,它将调用子类方法,而不是父类中的重写方法。

要在父类中调用重写的方法,必须使用关键字super。

假设以下例子中的类继承Employee类:

现在我们仔细阅读下面的代码,尝试给出它的输出结果:

运行结果:

例子解析:

在这个示例中,实例化了两个Salary对象:一个使用Salary来表示s,另一个使用Employee来表示e。

调用s.mailCheck() 时,编译器将在编译时在Salary类中找到mailCheck(),JVM将在执行过程时调用Salary类的mailCheck()。

e是对Employee的引用,但引用e时运行的是Salary类的mailCheck()方法。

在编译时,编译器使用Employee类中的mailCheck()方法来验证语句,但在运行时,Java虚拟机(JVM)调用Salary类中的mailCheck()方法。

整个过程称为虚方法调用,这个方法称为虚方法。

Java中的所有方法都可以用这种方式表示。因此,无论源代码在编译时引用什么数据类型,都可以在运行时调用重写的方法。

三、多态的实现方式

1、重写

2、接口

a.生活中最具代表性的接口就是插座。例如,一个三连接器插头可以连接到三孔插座上,因为每个国家都有自己的接口规则,由于国外定义的接口类型,可能无法出国。

b.Java中的接口类似于生活中的接口,是一些方法特性的集合,但没有方法实现。您可以看到java接口一章的内容。

3、抽象类和抽象方法

以上就是关于大数据编程入门:Java多态的全部内容了,希望这篇文章能够帮助到大家~

标签: #java的虚方法 #java使用多态