以下面这段代码为例来说明
public class Test {
public Test() {
System.out.println("构造");
}
static {
System.out.println("static block");
}
{
System.out.println("block");
}
public static void start() {
System.out.println("static method");
}
}
执行下面这段代码。执行了Test类的那些方法呢?
Test.start();打印log:
System.out: static block
System.out: static method
由此可见,根本就没有走类的构造。
本文通过一个简单的Java类示例,详细解析了类加载过程中静态块、实例初始化块及构造方法的执行时机与顺序。文章指出,在仅调用静态方法的情况下,并不会触发类实例的构造过程。
671

被折叠的 条评论
为什么被折叠?



