java 设计模式-单例
public class Singleton{private static Singleton p = null;private Singleton(){}public static Singleton getInstance(){if(p == null){p = new Singleton();}return p;}}
如上创建在多线程的环境下以上的实现会有不安全的问题,那么可以在方法前加synchronized 同步。
public class Singleton{private static Singleton p = null;private Singleton(){}public synchronized static Singleton getInstance(){if(p == null){p = new Singleton();}return p;}}应用举例:
1.单用户系统中jdbc数据库的连接。
2.各种xml配置文件的读取。
3.各种计数器,序列号生成器。
4.hibernate SessionFactory创建。
等等。