单例模式是指确保一个类仅有一个唯一的实例,并且提供一个全局的访问点。
实现思路:
1、将构造方法声明为private,防止客户程序利用构造方法创建多个对象。
2、有一个静态私有的成员变量,保存创建的实例。
3、提供一个可以获得实例的静态方法,通常称为getInstance方法。该方法返回一个类的实例。同时确保无论客户程序调用该getInstance()方法多少次,得到的始终是同一个对象。
例子:不管创建多少次主席,都只能创建一个主席对象
UML图:
Chairman.java
package singleton; //单例,主席 public class Chairman { private static Chairman instance; private String name; private Chairman(String name){ this.name = name; } //获取主席对象的方法,该方法确保只有一个主席对象 public static Chairman getInstance(String name){ if(instance == null){ instance = new Chairman(name); } return instance; } public String getName(){ return name; } }