JAVA里两种单例模式的区别是什么?为什么说一般认为第一种形式要更加安全些?如下见

2025-06-26 15:21:31
推荐回答(3个)
回答1:

第一种好像是饱汉模式,第二种是饿汉模式,区别就在于对象加载的时机不同,第一种是无论需不需要,先将对象生成出来以备使用,第二种是需要的时候才去加载,第二种说不安全好像是在多线程的情况下会出现生成多个对象的情况,所以需要加同步锁,或者利用内部类的方法来重新设计一下,具体可以参看《研磨设计模式》这本书,写得很详细啊

回答2:

上面的instance 变量就是用了单利模式,下面的代码就是外面想调用instance 时,如果instance 已经实例化,那么直接返回,如果没实例化,就实例化它再返回。全局只有一个instance

回答3:

单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。
特点:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。
你的理解是正确的