多态及其实现方式

多态及其实现方式

一、多态的定义

多态就是一个事物多种形态,就是同一符号或名字在不同的情况下具有不同解释的一种现象。

比如同一个行为具有多个不同表现形式或形态的能力也叫做多态,同一个接口,使用不同的实例而执行不同操作也叫做多态。

那么为什么需要多态呢?原因有以下几点:

1、实现代码复用,避免代码的冗余,方便后期对代码的修改;

2、解决项目中耦合问题;

3、提高程序的可扩展性,能够通过重写子类的方法,使不同的对像具有不同的功能。

多态的优点:

1. 消除类型之间的耦合关系

2. 可替换性

3. 可扩充性

4. 接口性

5. 灵活性

6. 简化性

多态可以提高代码的可扩展性和可复用性,还可以使程序有良好的扩展,并可以对所有类的对象进行通用处理。

二、多态的实现方式

1、用抽象类实现多态

抽象类和抽象方法实现多态性

父类提供一系列规定, 约束子类的行为

父类可以提供一些共性的行为

2、用接口实现多态

举例说明一下:我们把声卡、网卡或者电视卡都可以通过PCI的插槽与其进行连接,从而实现不同的功能,前提条件是它们都满足了PCI插槽的接口的要求。再比如java的接口,或者生活中我们使用的插座,国内和国外的插座规格是不一样的,因此出国都会必备一个对应国家的插座转换器。

抽象类与接口的区别:

抽象类是一类事物的高度聚合,那么对于继承抽象类的子类来说,对于抽象类来说,属于“是”的关系;

接口是定义行为规范,因此对于实现接口的子类来说,相对于接口来说,是“行为需要按照接口来完成”。

总结:

1、多态是指子类可以替换父类,在实际代码运行过程中调用子类的方法实现;

2、多态可以通过"子类继承父类+子类重写父类方法+父类引用指向子类对象"的方式实现,另外还可以通过"接口语法"的方式实现;

3、当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误;如果有,再去调用子类的同名方法。

参考链接:https://www.runoob.com/java/java-polymorphism.html

相关

wish的物流方式有哪些?能发哪些物流?
365投注入口

wish的物流方式有哪些?能发哪些物流?

📅 06-27 👁️ 1965
LED灯功率与电流计算表(LED灯功率和电流关系表解析)
体育在线365下载

LED灯功率与电流计算表(LED灯功率和电流关系表解析)

📅 07-18 👁️ 1426
Diadora 推出标志性“巴乔蓝”配色巴西战靴
体育在线365下载

Diadora 推出标志性“巴乔蓝”配色巴西战靴

📅 07-15 👁️ 108