- 概念:一个类只允许一个实例对象存在,并提供一个访问它的全局访问点
- 特点:
- 一个雷只能有一个实例
- 必须自己创建自己的唯一实例
- 必须给其他对象提供这一实例
- 优点:
- 减少了内存开销
- 避免了对资源的多重占用(比如文件操作等)
- 缺点:
- 没有接口,不能继承
- 与单一职责原则冲突
实现的基本步骤
1.创建类
``public class SingleObject{``
`` //创建 SingleObject 的类对象
private static SingleObject instance = new SingleObject();
/私有化构造函数
private SingleObject(){}
//获取唯一可用的对象
public static SingleObject getInstance(){
return instance;
}
public void showMessage(){
System.out.println("Hello World!");
}``
``}``
2.从类中获取唯一的对象
``public class SingletonPatternDemo {
public static void main(String[] args) {
SingleObject object = SingleObject.getInstance();
//显示消息
object.showMessage();
}
}``