黑马程序员之《单例设计模式》

单例模式:懒汉式和饿汉式


     1.饿汉式----模式代码

饿汉式就是先实例,只要是类一加载,那么次对象就存在。


182110895.jpg


返回true,说明只有一个对象。


    2.懒汉式----模式代码

类一加载,不会先实例,首先是空值,在调用返回对象的方法中实例,一调用方法实例对象才存在。

184415422.jpg

返回true,只有一个对象。不过多线程中,试用这种懒汉式可能会实例化对象失败。所以有安全隐患。

不过还是有办法解决,加锁。如下:

185805708.jpg

在以后的开发中,饿汉式用的比较多,这样加上锁后,增加安全性,判断次数也比较少,那么效率也不会变小。先判断,然后判断进锁。

你可能感兴趣的:(单列设计模式,懒汉式和饿汉式)