JAVA静态块执行了多少次?
我怀疑它在Java中是如何工作的静态块。据我所知,每次JVM加载类时,都会执行静态块中的代码。我不明白的是什么时候加载了一个类
例如,假设我在类MyObject
中有一个静态块,然后从另一个类中有以下代码:
MyObject o1= new MyObject();
MyObject o2= new MyObject();
在这种情况下,静态块执行了多少次
你可以在下面搜索框中键入要查询的问题!
我怀疑它在Java中是如何工作的静态块。据我所知,每次JVM加载类时,都会执行静态块中的代码。我不明白的是什么时候加载了一个类
例如,假设我在类MyObject
中有一个静态块,然后从另一个类中有以下代码:
MyObject o1= new MyObject();
MyObject o2= new MyObject();
在这种情况下,静态块执行了多少次
# 1 楼答案
静态块中的代码在JVM首次加载类时执行
如果再次加载,则不会执行静态块。您可以使用类显式加载该类。forName(“类”)方法来执行静态块
就你而言
首次创建对象时,将执行静态块。再次创建另一个对象,它将不会执行。它们共享相同的数据副本