Java 中多态的实现原理

一. 什么是多态

多态是面向对象编程里面的概念,一个接口的多种不同的实现方式,即为多态。

这里的接口不应理解得太死板,比如在 Java 里面,继承一个类和实现一个接口本质上都是一种继承行为,因此都可以理解为多态的体现。

从静态和动态的角度进行划分,多态可以分为 编译时多态运行时多态

编译时多态是静态的,主要是指方法的重载,它是根据参数列表的不同来区分不同的方法,编译之后会变成两个不同的方法。

而运行时多态是动态的,是通过动态绑定来实现的,也就是大家通常所说的多态性,本篇博客主要讨论运行时多态。

#二. 多态的特点
多态的特点为:只有在运行的时候才知道引用指向的是哪个类的实例对象,以及引用调用的方法指向的是哪个类中实现的方法。

多态通常有两种实现方法:

  • 子类继承父类(extends)
  • 类实现接口(implements)

多态核心之处就在于对父类方法的重写或对接口方法的实现,以此在运行时实现不同的执行效果。

三. 多态的代码实现

1. 子类继承父类

第一步:定义父类

public class Father {
   
    public void dealHouse(){
   
        System.out.println("父亲处置房产"); 
    }    
}

第二步:定义子类(大儿子和小儿子)

//大儿子
public class SonA extends Father {
   
    @Override
    public void dealHouse() {
   
        System
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值