首页 > 试题广场 >

运行下面代码,输出的结果是()

[单选题]
运行下面代码,输出的结果是()
class A {
    public A() {
        System.out.println("class A");
    }
    { System.out.println("I'm A class"); } 
    static { System.out.println("class A static"); }
}
public class B extends A {
    public B() {
        System.out.println("class B");
    }
    { System.out.println("I'm B class"); }
    static { System.out.println("class B static"); }
    
    public static void main(String[] args) { 
 new B(); 
}
}

  • class A static
    class B static
    I'm A class
    class A
    I'm B class
    class B
  • class A static
    I'm A class
    class A
    class B static
    I'm B class
    class B
  • class A static
    class B static
    class A
    I'm A class
    class B
    I'm B class
  • class A static
    class A
    I'm A class
    class B static
    class B
    I'm B class

这题做了不知道多少遍了。

Java程序初始化顺序:

  1. 父类的静态代码块
  2. 子类的静态代码块
  3. 父类的普通代码块
  4. 父类的构造方法
  5. 子类的普通代码块
  6. 子类的构造方法
发表于 2019-08-28 12:14:53 回复(22)
父类静态代码块→子类静态代码块→父类普通代码块→父类构造方法→子类普通代码块→子类构造方法
发表于 2022-01-13 19:12:37 回复(0)
注意:普通代码块初始化在构造方法之前(new对象之后)
发表于 2022-05-03 16:45:39 回复(0)
父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法
发表于 2021-11-03 20:20:43 回复(0)
Java程序初始化顺序: 父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法 关于java的类加载机制:
发表于 2021-10-11 13:01:20 回复(0)
Java程序初始化顺序: 父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法
编辑于 2021-08-14 12:07:21 回复(0)
静态域  ===》 普通方法域  ===》 构造方法域
发表于 2021-07-18 01:27:32 回复(0)
  1. 父类的静态代码块
  2. 子类的静态代码块
  3. 父类的普通代码块
  4. 父类的构造方法
  5. 子类的普通代码块
  6. 子类的构造方法
发表于 2021-07-06 10:56:10 回复(0)
JAVA初始化顺序: 父类静态代码块 子类静态代码类 父类普通代码块 父类构造方法 子类静态代码块 子类构造方法
发表于 2021-06-23 00:36:03 回复(0)
Java程序初始化顺序: 父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法
发表于 2021-06-07 08:50:28 回复(0)
Java程序初始化顺序: 父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法
发表于 2021-03-11 14:04:29 回复(0)
Java程序初始化顺序: 父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法
发表于 2021-03-06 21:08:34 回复(0)
顺序是 父类静态 子类静态 父类代码块 父类构造 子类代码块 子类构造
发表于 2021-02-03 09:23:22 回复(0)
父子父父子子
1、父类静态成员变量(静态代码块)
2、子类静态成员变量(静态代码块)
3、父类普通成员变量(普通代码块
4、父类构造器
5、子类普通成员变量(普通代码块
6、子类构造器
发表于 2021-01-24 16:10:11 回复(0)
先执行静态代码块,如果该类有父类先执行父类的静态代码块。然后是非静态代码块。要先执行父类的构造方法,再执行子类的构造方法
发表于 2020-08-29 15:13:25 回复(0)
代码块比构造前,在static静态块后
发表于 2020-08-13 11:29:20 回复(0)
Java程序初始化顺序: 父类的静态代码块 子类的静态代码块 父类的普通代码块 父类的构造方法 子类的普通代码块 子类的构造方法
发表于 2020-08-08 04:13:15 回复(0)
类初始化顺序请看下图:


编辑于 2019-10-21 11:12:12 回复(8)

发表于 2020-09-29 21:59:54 回复(0)
父类静态代码块-->子类静态代码块-->父类普通代码块-->父类构造方法-->子类代码块-->子类构造方法;
发表于 2019-09-06 10:36:46 回复(0)