可以在类中清空init方法初始化静态最终变量吗?

时间:2016-04-26 07:52:11

标签: java static

我有一个具有静态最终变量的类。我想在启动时初始化它,而不是在它们第一次被引用时。我可以在类中使用一个空的静态init()方法来实现此目的吗?

实施例

public class ABC {
   private static final SomeObject abc = new SomeObject();
   //other methods and variables
   public static void init(){
    //empty method
   }
}

public class DEF{
   public class static void main(String[] args) {
     ABC.init();
   }
}

1 个答案:

答案 0 :(得分:1)

您可以使用静态块并在那里初始化它。每次创建对象时,init()方法最终都可能会初始化它们。

public class ABC {
   private static final SomeObject abc = new SomeObject();
   //other methods and variables
   static{
       //initialization code.
   }

}

public class DEF{
   public class static void main(String[] args) {
ABC a =new ABC();

   }
}