【发布时间】:2013-09-13 09:53:22
【问题描述】:
我真的不知道该怎么称呼这个东西,所以对于模糊的标题感到抱歉,所以基本上我对类中的静态字段和方法有所了解,但不知道以下的用法和作用:
public class MyClass
{
public MyClass()
{
}
static
{
}
}
有人愿意解释吗?
【问题讨论】:
标签: java methods static accessor
我真的不知道该怎么称呼这个东西,所以对于模糊的标题感到抱歉,所以基本上我对类中的静态字段和方法有所了解,但不知道以下的用法和作用:
public class MyClass
{
public MyClass()
{
}
static
{
}
}
有人愿意解释吗?
【问题讨论】:
标签: java methods static accessor
如果您指的是静态块:
static{
}
它在main方法之前执行;一般用于调用其他静态方法,初始化静态字段。
如果你指的是构造函数:
public MyClass(){
}
当你创建一个对象的新实例时,它曾经构造一个对象:MyClass instance = new MyClass();
【讨论】:
静态初始化块用于在类加载后初始化类的静态字段。
在你的情况下,你在那个块内什么都不做,所以它实际上是没用的。
【讨论】:
【讨论】:
类加载器加载类时调用静态块(类的 clinit 字节码部分)
【讨论】: