欢迎使用CSDN-markdown编辑器

来源:互联网 发布:解码矩阵 编辑:程序博客网 时间:2024/06/06 01:18

今天看代码的时候发现自己对于继承中方法的执行顺序不太清楚,查了下资料,然后又写了个测试类。代码如下,其中包含了重写,子类重写父类的方法时,会覆盖父类中的方法,父类中的该方法不会被执行。

public class Methods {    static {        System.out.println("父类的static块");    }    {        System.out.println("父类的代码块");    }    Methods(){        System.out.println("父类的构造方法");    }    void test() {        System.out.println("父类的普通方法");    }    public static void main(String[] args) {        SubClass sc = new SubClass();        sc.test();    }}class SubClass extends Methods{    static {        System.out.println("子类的static块");    }    SubClass(){        System.out.println("子类的构造方法");    }    {        System.out.println("子类的代码块");    }    void test() {        System.out.println("子类的普通方法");    }}

执行结果为:
父类的static块
子类的static块
父类的代码块
父类的构造方法
子类的代码块
子类的构造方法
子类的普通方法

原创粉丝点击