我知道单例模式是这样实现的:
public class ClassName {
private static ClassName instance;
public static ClassName getInstance() {
if (instance == null) {
instance = new ClassName();
}
return instance;
}
private ClassName() {}
}
我想问的是为什么你不能像这样做:
public class ClassName {
public static final ClassName instance = new ClassName();
private ClassName() {}
}
这段代码行数更少,看起来实现的功能也和原来一样。当然,这里没有懒加载,但我并不认为懒加载会带来重大的好处。由于我经验有限,如果您能分享您的知识,我将不胜感激。