Java-类加载和main()方法的执行顺序?


2、类加载和main()的执行顺序?

备注:执行main()方法会先加载main()方法所在的类。存在继承关系中,创建子类对象初始化过程为:

父类静态成员和语句块

子类静态成员和静态语句块

父类普通成员和普通语句块

父类构造函数

子类普通成员和普通语句块

父类构造函数

示例如下:

public class A {
    public A(){
        System.out.println("A构造函数-----");
    }
    {
        System.out.println("A普通语句块-----");
    }
    static
    {
        System.out.println("A静态语句块-----");
    }

}

class B extends A{
    public B(){
        System.out.println("B构造函数-----");
    }
    {
        System.out.println("B普通语句块-----");
    }
    static
    {
        System.out.println("B静态语句块-----");
    }

    public static void main(String[] args) {
        System.out.println("main---------");
        A a = new B();
    }
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM