java08(设计模式之单例设计模式)

单例设计模式:

        1,为了避免其他程序过多建立该类对象,先禁止其他程序建立该类的对象

        (构造函数私有化)

        2,还为了让其他程序可以访问到该类对象。只好在本类中自定义一个对象。

        (在类中创建一个本类对象)

        3,为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式

        (提供方法获取该对象)

例1:饿汉式与懒汉式

java08(设计模式之单例设计模式)_第1张图片

例2:延时加载解决多线程引发的安全问题    

        懒汉式也叫延时加载,多线程访问时会出现安全问题,可以用同步的方式来解决。但是加锁方式过于低调,因此这里使用双重判断的方式来提高效率。(同步时,使用的锁是该类所属的字节码文件对象)

java08(设计模式之单例设计模式)_第2张图片

        

你可能感兴趣的:(java08(设计模式之单例设计模式))