【问题标题】:Basic java regarding a code block [duplicate]关于代码块的基本java [重复]
【发布时间】:2013-09-13 09:53:22
【问题描述】:

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

public class MyClass
{
     public MyClass() 
     {

     }

     static 
     {

     }
}

有人愿意解释吗?

【问题讨论】:

标签: java methods static accessor


【解决方案1】:

如果您指的是静态块:

static{

}

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

如果你指的是构造函数:

public MyClass(){

}

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

【讨论】:

    【解决方案2】:

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

    在你的情况下,你在那个块内什么都不做,所以它实际上是没用的。

    【讨论】:

      【解决方案3】:

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

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

      更多信息请见java tutorial

      【讨论】:

        【解决方案4】:

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-10-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多