java模式:深入单例模式
private static final SingletonClass instance = new SingletonClass();
public static SingletonClass getInstance() {
return instance;
}
private SingletonClass() {
}
}
private static SingletonClass instance = null;
public static SingletonClass getInstance() {
if(instance == null) {
instance = new SingletonClass();
}
return instance;
}
private SingletonClass() {
}
}
private static SingletonClass instance = null;
public synchronized static SingletonClass getInstance() {
if(instance == null) {
instance = new SingletonClass();
}
return instance;
}
private SingletonClass() {
}
}
private static SingletonClass instance = null;
public static SingletonClass getInstance() {
synchronized (SingletonClass.class) {
if(instance == null) {
instance = new SingletonClass();
}
}
return instance;
}
private SingletonClass() {
}
}
private static SingletonClass instance = null;
public static SingletonClass getInstance() {
if (instance == null) {
synchronized (SingletonClass.class) {
if (instance == null) {
instance = new SingletonClass();
}
}
}
return instance;
}
private SingletonClass() {
}
}
private static SingletonClass instance = null;
public static SingletonClass getInstance() {
if (instance == null) {
SingletonClass sc;
synchronized (SingletonClass.class) {
sc = instance;
if (sc == null) {
synchronized (SingletonClass.class) {
if(sc == null) {
sc = new SingletonClass();
}
}
instance = sc;
}
}
}
return instance;
}
private SingletonClass() {
}
}
private volatile static SingletonClass instance = null;
public static SingletonClass getInstance() {
if (instance == null) {
synchronized (SingletonClass.class) {
if(instance == null) {
instance = new SingletonClass();
}
}
}
return instance;
}
private SingletonClass() {
}
}
private static class SingletonClassInstance {
private static final SingletonClass instance = new SingletonClass();
}
public static SingletonClass getInstance() {
return SingletonClassInstance.instance;
}
private SingletonClass() {
}
}
本文出自 “豆子空间” 博客,请务必保留此出处http://devbean.blog.51cto.com/448512/203501
最新文章
- ubuntu系统修改mysql字符集
- 前台JS(type=‘file’)读取本地文件的内容,兼容各种浏览器
- 将MapReduce的结果输出至Mysql数据库
- PNG格式的图像文件,创建的图像的MIME类型的头部
- C++ 面向对象编程
- 深入浅出 - Android系统移植与平台开发(五)- 编译Android源码(转)
- SectionIndexer中的getSectionForPosition()与getPositionForSection()
- CodeIgniter 应用开发笔记 - 3
- .net 信息采集ajax数据
- SpringMvc参数传递中乱码问题
- JMeter5.1企业级应用应用常用功能详解(含插件安装)
- Hibernate 基础解析(Configuration,SessionFactory,Session,Transaction,Query,Criteria)
- Alpha冲刺-(9/10)
- Linux kernel 之 socket 创建过程分析
- toml
- Makefile introduction (very old presentation)
- Python+django+uWSGI+Nginx
- 团体程序设计天梯赛L2-021 点赞狂魔 2017-04-18 11:39 154人阅读 评论(0) 收藏
- object-c语言的nonatomic,assign,copy,retain的区别
- 2017-2018 ACM-ICPC Northern Eurasia (Northeastern European Regional) Contest (NEERC 17) 日常训练
热门文章
- CF 602C The Two Routes(dij+邻接矩阵)
- hdu_5585_Less Time, More profit(二分+最大权闭合图)
- 安卓---下拉刷新---上拉加载---解决导入library等自生成库文件失败的问题
- mysql表设计
- Gentoo本地化设置--时区、时钟、字体、中文环境
- BcdTool(系统启动菜单管理器) v1.0912 绿色版
- html5游戏开发框架之lufylegend开源库件学习记录
- Set下面HashSet,TreeSet和LinkedHashSet的区别
- 12C dbca silent
- Linux下将Mysql和Apache加入到系统服务里的方法