【发布时间】:2017-11-13 00:10:18
【问题描述】:
在java中,一个类是在创建类的对象之前加载的。在整个程序期间,一个类只加载一次。 发生这种情况时,将初始化静态并执行静态块。 这可以是循环的;在一个类完全初始化之前,我在类本身中创建了一个类的对象。 例如:
public class MyTestClass{
public static MyTestClass myTest= new MyTestClass();
}
public class Beginner{
public static void main(String[] args){
System.out.println(MyTestClass.myTest==null);
}
}
当我第一次在 main() 中调用 MyTestClass.myTest 时; MyTestClass 将处于加载过程中,我尝试在加载时创建 MyTestClass 的对象;那不应该创建一个循环类加载,这可以是无限的吗? 这在 java 中是如何处理的?
【问题讨论】:
-
该代码无法编译。请在您的问题中发布真实代码。
-
你的意思是
public class Beginner {而不是public void Beginner {? -
我认为他是这个意思:-)
标签: java class static initialization loading