什么是多态方法重写与重载

Posted lujiahua

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是多态方法重写与重载相关的知识,希望对你有一定的参考价值。

什么是多态

多态的概念呢比较简单,就是同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。

如果按照这个概念来定义的话,那么多态应该是一种运行期的状态。 为了实现运行期的多态,或者说是动态绑定,需要满足三个条件。

即有类继承或者接口实现、子类要重写父类的方法、父类的引用指向子类的对象。

public class Parent
    
    public void call()
        sout("im Parent");
    


public class Son extends Parent// 1.有类继承或者接口实现
    public void call()// 2.子类要重写父类的方法
        sout("im Son");
    


public class Daughter extends Parent// 1.有类继承或者接口实现
    public void call()// 2.子类要重写父类的方法
        sout("im Daughter");
    


public class Test
    
    public static void main(String[] args)
        Parent p = new Son(); //3.父类的引用指向子类的对象
        Parent p1 = new Daughter(); //3.父类的引用指向子类的对象
    


重载(静态多态)
就是函数或者方法有同样的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,相互称之为重载函数或者方法。

重写(动态多态)
就是Java的子类与父类中有两个名称,参数列表都相同的方法的情况。由于他们具有相同的方法签名,所以子类中的新方法将覆盖父类中原有的方法。
 

以上是关于什么是多态方法重写与重载的主要内容,如果未能解决你的问题,请参考以下文章

重写和重载的区别

继承多态及方法重写重载

Java之方法重写方法重载多态

java中重载,继承,重写和多态的区别

Java中重载(Overload)和重写(Override)的定义

方法重载和重写的区别