Java 在静态类上初始化?
如果我有一个带有静态方法的helper类,如何才能最好地进行一些初始化Java 在静态类上初始化?,java,static,Java,Static,如果我有一个带有静态方法的helper类,如何才能最好地进行一些初始化 public class MyClass { //init a properties file { properties.load(..) } public static String getStringFromProperty(String name); return properties.getProperty(name); } } 有比静态代码块更好的初始化方
public class MyClass {
//init a properties file
{
properties.load(..)
}
public static String getStringFromProperty(String name);
return properties.getProperty(name);
}
}
有比静态代码块更好的初始化方法吗?您可以使用一个允许您将类设计为普通类的方法。在本例中,您将在构造函数中进行初始化。如果您在应用服务器下运行,您还可以提供静态服务(例如DAOs)
要知道的第一件事;此函数只能调用静态方法和
类的属性
所以最好将属性声明为静态
公共静态字符串getStringFromProperty(字符串名称);
返回properties.getProperty(名称);
}像这样试试
静态初始值设定项块
到在加载类时初始化属性
public class MyClass {
static
{
properties.load(..)
}
public static String getStringFromProperty(String name);
return properties.getProperty(name);
}
}
您可能应该在该块前面有一个
static
,我想静态块是一种更好的方式。如果你有静态变量,而不是方法,你可以这样做。它必须在静态块中。否则,除非创建MyClass的实例,否则不会加载属性。