欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

Java中类的加载顺序执行结果详细介绍

程序员文章站 2022-03-29 12:16:59
...
这篇文章主要介绍了Java中类的加载顺序执行结果的相关资料,需要的朋友可以参考下

具体代码如下所示:


public class Parent {
  public static int a = parentStaticMethod2();
  {
    System.out.println("父类非静态初始化块");
  }
  static {
    System.out.println("父类静态初始化块");
  }
  public Parent() {
    System.out.println("父类的构造方法");
  }
  public static int parentStaticMethod() {
    System.out.println("父类类的静态方法1");
    return 10;
  }
  public static int parentStaticMethod2() {
    System.out.println("父类的静态方法2");
    return 9;
  }
  @Override
  protected void finalize() throws Throwable {
    // TODO Auto-generated method stub
    super.finalize();
    System.out.println("销毁父类");
  }
  public static void main(String[] args) {
    new Child();
  }
}
class Child extends Parent {
  {
    System.out.println("子类非静态初始化块");
  }
  static {
    System.out.println("子类静态初始化块");
  }
  public Child() {
    System.out.println("子类的构造方法");
  }
  public static int childStaticMethod() {
    System.out.println("子类的静态方法");
    return 1000;
  }
  @Override
  protected void finalize() throws Throwable {
    // TODO Auto-generated method stub
    super.finalize();
    System.out.println("销毁子类");
  }
}

执行结果:

父类的静态方法2
父类静态初始化块
子类静态初始化块
父类非静态初始化块
父类的构造方法
子类非静态初始化块
子类的构造方法

总结

以上就是Java中类的加载顺序执行结果详细介绍的详细内容,更多请关注其它相关文章!