Java 单例模式详解及示例代码
Java 单例模式是一种常用的设计模式,它确保一个类只有一个实例,并提供一个全局访问点。
举个例子,假设你有一个日志记录器类,你希望整个应用程序中只有一个日志记录器实例,并且这个实例可以被应用程序中的任何部分访问。在这种情况下,单例模式就派上用场了。
以下是 Java 单例模式的一个简单示例代码:
public class Logger {
private static Logger instance;
private Logger() {}
public static Logger getInstance() {
if (instance == null) {
instance = new Logger();
}
return instance;
}
public void log(String message) {
System.out.println('Logging message: ' + message);
}
}
在这个示例中,我们使用了私有构造函数来阻止直接创建实例。通过一个静态的 getInstance() 方法来获取 Logger 实例。getInstance() 方法会检查 instance 是否为 null,如果是,就创建一个新的 Logger 实例并将其赋值给 instance 变量。如果 instance 已经存在,就直接返回该实例。这样就确保了整个应用程序中只有一个 Logger 实例。
使用 Logger 类的代码如下:
Logger logger = Logger.getInstance();
logger.log('Hello, world!');
在这个示例中,我们首先通过 getInstance() 方法获取 Logger 实例,然后调用 log() 方法来记录日志。由于我们使用了单例模式,因此可以在整个应用程序中使用相同的 Logger 实例来进行日志记录。
原文地址: https://www.cveoy.top/t/topic/nR8P 著作权归作者所有。请勿转载和采集!