java多态之运行时多态和编译时多态

来源:互联网 发布:mac air 电池容量 编辑:程序博客网 时间:2024/05/20 17:41

多态分为静态多分配、动态单分配

运行时多态即动态单分配:程序在运行时在类的方法元数据中搜索合适的方法再调用该方法.与重写有关

编译时多态即静态多分配:在编译阶段javac编译器会根据参数类型来决定调用哪一个方法.与重载有关

运行时多态demo:

    public class Test {    public static void main(String[] args) {        //运行时多态        Father c = new SonClass();        c.method();   //父类的构造方法 子类的构造方法 子类的method()        c.method2();  //父类的构造方法 子类的构造方法 父类的method2()    }}class Father {    public Father() {        System.out.print("父类的构造方法\t");    }    public void method() {        System.out.print("父类的method()\t");    }    public void method2() {        System.out.print("父类的method2()\t");    }}class SonClass extends Father {    public SonClass() {        System.out.print("子类的构造方法\t");    }    @Override    public void method() {        System.out.print("子类的method()\t");    }}
0 0
原创粉丝点击