Java中类的加载顺序执行结果
具体代码如下所示:
publicclassParent{ publicstaticinta=parentStaticMethod2(); { System.out.println("父类非静态初始化块"); } static{ System.out.println("父类静态初始化块"); } publicParent(){ System.out.println("父类的构造方法"); } publicstaticintparentStaticMethod(){ System.out.println("父类类的静态方法1"); return10; } publicstaticintparentStaticMethod2(){ System.out.println("父类的静态方法2"); return9; } @Override protectedvoidfinalize()throwsThrowable{ //TODOAuto-generatedmethodstub super.finalize(); System.out.println("销毁父类"); } publicstaticvoidmain(String[]args){ newChild(); } } classChildextendsParent{ { System.out.println("子类非静态初始化块"); } static{ System.out.println("子类静态初始化块"); } publicChild(){ System.out.println("子类的构造方法"); } publicstaticintchildStaticMethod(){ System.out.println("子类的静态方法"); return1000; } @Override protectedvoidfinalize()throwsThrowable{ //TODOAuto-generatedmethodstub super.finalize(); System.out.println("销毁子类"); } }
执行结果:
父类的静态方法2
父类静态初始化块
子类静态初始化块
父类非静态初始化块
父类的构造方法
子类非静态初始化块
子类的构造方法
总结
以上所述是小编给大家介绍的Java中类的加载顺序执行结果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!