GOF23中设计模式 (一) 单列模式
饿汉模式: 在类加载的时候天然的线程安全
类加载的时候直接实例化对象,不管以后有没有使用 优点:线程安全,调用效率高。但是不能延迟加载,占内存。
如下图
我们声明一个静态的成员变量并给他初始化,单例模式需要将其构造方法私有化,不让外部直接创建创建对象,通过提供方法的模式创建本类的对象,在方法中直接将对象返回,这样就可以保证外部每次调用这个方法得到的都是同一个对象,一上来就将对象初始化完毕我们称之为饿汉模式,像一个饿汉一样一上来就初始化,不管有没有被调用。太多这样的,会生成过多无用的对象影响系统的性能。
于是懒汉模式出现了。
在调用方法时候先进行判断如果这个对象为null的话,我们就创建一个新的对象,这样的话就可以。上述问题。但是这样也并不是完美的。