锁定老帖子 主题:有必要普及一下关于单例模式的常识.
精华帖 (2) :: 良好帖 (10) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-03-22
最后修改:2012-03-22
饿汉式:
package com.design.pattern.singleton.concrete; public class EagerSingleton { private static EagerSingleton instance = new EagerSingleton(); private EagerSingleton(){}; public static EagerSingleton getInstance(){ return instance; } }
package com.design.pattern.singleton.concrete; public class LazySingleton { private static LazySingleton instance = null; private LazySingleton(){}; public static synchronized LazySingleton getInstance(){ if(instance==null){ instance = new LazySingleton(); } return instance; } }
package com.design.pattern.singleton.concrete; public class DoubleCheckLockSingleton { private static volatile DoubleCheckLockSingleton instance = null; private DoubleCheckLockSingleton(){}; public static DoubleCheckLockSingleton getInstance(){ if(instance == null){ // first check synchronized(DoubleCheckLockSingleton.class){ // add lock if(instance == null){ //second check instance =new DoubleCheckLockSingleton(); } } } return instance; } }
package com.design.pattern.singleton.concrete; public class InnerClassSingleton { private InnerClassSingleton(){}; static class staticInnerSingle{ private static InnerClassSingleton instance = new InnerClassSingleton(); } public static InnerClassSingleton getInstance(){ return staticInnerSingle.instance; } }
枚举单例模式
public enum Sington{ INSTANCE; public void singletonOpr(){ // some opertions } } 总之,五类:懒汉,饿汉,双重校验锁,静态内部类,枚举。
多个虚拟机
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2012-03-22
最后修改:2012-03-22
Singleton反序列化
import java.io.Serializable; public class SerializableSingleton implements Serializable{ private static final long serialVersionUID = -6099617126325157499L; static SerializableSingleton instance = new SerializableSingleton (); private SerializableSingleton (){} private Object readResolve(){ return instance; } }
|
|
返回顶楼 | |
发表时间:2012-03-22
很厉害的样子
|
|
返回顶楼 | |
发表时间:2012-03-22
大哥,这排版。。。
|
|
返回顶楼 | |
发表时间:2012-03-22
LZ缺个枚举
双重加锁的使用条件也应该说下 |
|
返回顶楼 | |
发表时间:2012-03-22
fancyboy2050 写道 大哥,这排版。。。
不好意思,第一次发帖.不知道怎么排版,刚才整理了一下.谢谢支持! |
|
返回顶楼 | |
发表时间:2012-03-22
一个单例激起千层浪呀!不过这样也好,技术论坛吗,有什么观点拿出来大家讨论下!
|
|
返回顶楼 | |
发表时间:2012-03-22
多个JVM的情况也讲解下啊
|
|
返回顶楼 | |
发表时间:2012-03-22
不错 受教育了
|
|
返回顶楼 | |
发表时间:2012-03-22
这个还是比较好的1
|
|
返回顶楼 | |