(学习笔记)设计模式之单例模式

来源:互联网 发布:淘宝镜子自拍模特技巧 编辑:程序博客网 时间:2024/06/10 13:15

单例模式 的作用是让整个程序中只有某个物体一个对象。

比如数据库的连接,一般只有一个对象。rpg游戏中一个主角只能有一个对象等等

这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。

注意:

  • 1、单例类只能有一个实例。
  • 2、单例类必须自己创建自己的唯一实例。
  • 3、单例类必须给所有其他对象提供这一实例。

优点: 1、在内存里只有一个实例,减少了内存的开销,尤其是频繁的创建和销毁实例(比如管理学院首页页面缓存)。 2、避免对资源的多重占用(比如写文件操作)。

缺点:没有接口,不能继承,与单一职责原则冲突,一个类应该只关心内部逻辑,而不关心外面怎么样来实例化。


一般写法:

public class SingleObject {   //创建 SingleObject 的一个对象   private static SingleObject instance = new SingleObject();   //让构造函数为 private,这样该类就不会被实例化   private SingleObject(){}   //获取唯一可用的对象   public static SingleObject getInstance(){      return instance;   }   public void showMessage(){      System.out.println("Hello World!");   }}




原创粉丝点击