java设计模式——单例模式(创建型模式)
- 单例模式介绍:
单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 - 单例模式的特点:
- 单例类只能有一个实例
- 单例类必须自己创建自己的唯一实例
- 单例类必须给所有其他对象提供这一实例
- 单例模式的核心:构造方法私有
- 主要用途:一个全局使用的类频繁地创建与销毁
- 单例模式的简单使用:
1. 创建一个单例类:
public class SingleObject {
private SingleObject() {
}
private static SingleObject instance = new SingleObject();
public static SingleObject getInstance(){
return instance;
}
public void showMessage(){
System.out.println("Hello World!");
}
}
2. 创建一个外部类使用这个实例:
public class SingleDemo {
public static void main(String[] args) {
SingleObject instance = SingleObject.getInstance();
instance.showMessage();
}
}
- 单例模式的优点:
- 在内存里只有一个实例,减少了内存的开销,尤其是频繁的创建和销毁实例;
- 避免对资源的多重占用;
- 单例模式的缺点:
没有接口,不能继承,与单一职责原则冲突,一个类应该只关心内部逻辑,而不关心外面怎么样来实例化