单件模式:
单件模式常常用来管理共享的资源文件,如数据连接池或线程池等。
单件模式:确保一个类只有一个实例,并提供一个全局访问点。
经典的单件模式:
三种解决经典单线程模式造成的多线程困扰:
a.如果getInstance()的性能对应用程序不是很关键,就直接synchorinized
b.不用延迟实例化的做法,直接创建对象private static Singleton singleton = new Singleton();
c.双重检查加锁,但不适用于1.4及更早的java版本。
用方法c实现:
注意:如果使用多个类加载器,可能会导致单件模式失效。