-1

我真的不知道该怎么称呼这个东西,所以对于模糊的标题感到抱歉,所以基本上我对类中的静态字段和方法有所了解,但不知道以下内容的用途和作用:

public class MyClass
{
     public MyClass() 
     {

     }

     static 
     {

     }
}

有人愿意解释吗?

4

4 回答 4

2

如果您指的是静态块:

static{

}

它在 main 方法之前执行;一般用于调用其他静态方法,初始化静态字段。

如果您指的是构造函数:

public MyClass(){

}

当您创建它的新实例时,它曾经构造一个对象:MyClass instance = new MyClass();

于 2013-09-09T20:12:19.163 回答
1

静态初始化块用于在加载类后初始化类的静态字段。

在您的情况下,您在该块内什么也没做,所以它实际上是无用的。

于 2013-09-09T20:12:27.510 回答
1

它是一个静态初始化块。这意味着该块在加载类时执行,而不是在实例化实例时执行。

对于诸如在类初始化时填充值映射之类的事情很有用。

更多信息可以在java教程中找到

于 2013-09-09T20:13:48.837 回答
0

类加载器加载类时调用静态块(类的 clinit 字节码部分)

于 2013-09-09T20:19:28.793 回答