一个<clinit>方法可以在 Java 中执行多少次?



对于一个特定的类,一个方法只执行一次是正确的吗?

我已经创建了Test类,并将其引用如下

  • 运算符
  • 反射

;clinit>块被引用1次

public class ClinitTest {
public static void main(String[] args) throws ClassNotFoundException {
Test b = new Test(); // initialization through NEW operator
Class<Test> bcp2 =(Class<Test>) Class.forName("Test"); //initialisation through reflection
}
}
class Test
{
public static String name="Test";
public Test()
{
System.out.println("In Constructor");
}
static
{
System.out.println("In Static");
}
{
System.out.println("In Instance");
}
}

最新更新