2
最近我在一次采访中被问到:你如何在Java中实现Singleton设计模式?Java中的单例模式实现
我有点困惑,因为有2个选项:
1)只要有一个静态数据成员。静态成员,例如
private static Logger logger;
将确保只有一个记录器的给定类的所有对象之间共享。
2)实施实例,控制器,限制实例:
public class LoggerWrapper {
private static Logger instance = null;
private LoggerWrapper() { }
public static Logger getInstance() {
if (instance == null) {
instance = new Logger();
}
return instance;
}
}
的是这2种单方法之间的区别?
“实例”字段需要是“静态”。 –
和'final'以及 –
那么,你的第二个代码将不会编译。 –