java手写单例模式
2024-09-04 00:55:29
1 懒汉模式
public class Singleton {
private Singleton singleton = null;
private Singleton() {
}
public Singleton getInstance() {
if (singleton == null) {
singleton = new Singleton();
} else {
return singleton;
}
}
}
问题在于不是线程安全的。要线程安全,在getInstance前面加上synchronized关键字即可,但是开销太大。
2 饿汉模式
public class Singleton {
private Singleton singleton = new Singleton();
private Singleton() {
}
public Singletion getSingleton() {
return singleton;
}
}
3 静态内部类
public class Singleton {
private static class SingletonHolder {
private static Singleton instance = new Singleton();
}
public static Singleton getInstance() {
return SingletonHolder.instance;
}
}
最新文章
- [Cordova] Plugin开发架构
- xcode升级导致git无法使用
- Java程序员的日常—— 基于类的策略模式、List<;?>;与List、泛型编译警告、同比和环比
- jQuery自定义漂亮的下拉框插件8种效果演示
- JSP隐含变量和Spring中Model在EL表达式中的读取顺序
- Radar之字节流加载图片
- Can jxta be used to develop online card game (p2p style)?
- 小测几种python web server的性能
- dede导航设置成单页面内容
- underscorejs-every学习
- debain 解决无法显示中文
- 编写jeb插件打印目标方法的交叉引用
- 对Textbox的值转换为带千位符和小数的Decimal字符串
- Java线程状态及Thread类中的主要方法
- CAS实现SSO单点登录原理(转)
- Windows7 安装完成mysql dos启动服务出现服务名称无效
- Xampp相关命令
- Tomcat的安装与配置
- maven generating project in batch mode hang
- SpringCloud(3)---Eureka服务注册与发现