>  기사  >  Java  >  Java의 클래스 로딩 순서 실행 결과에 대한 자세한 소개

Java의 클래스 로딩 순서 실행 결과에 대한 자세한 소개

黄舟
黄舟원래의
2017-10-12 10:00:221899검색

이 글은 주로 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의 클래스 로딩 순서 실행 결과에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.