黑马程序员技术交流社区
标题:
如何解决单例设计模式中的懒汉式安全隐患问题
[打印本页]
作者:
追逐
时间:
2014-3-18 15:27
标题:
如何解决单例设计模式中的懒汉式安全隐患问题
/*
需求:
写一个延迟加载的单例设计模式示例(也就是单例设计模式中的懒汉式)
*/
class YanChi {
private static YanChi y = null; //先自己创建一个属于自己的对象
private YanChi() {} //写一个空参数的构造函数;
public static YanChi getInstance() { //因为存在安全隐患问题,加上同步,而且是静态同步
if(y == null) { //追加一层判断。提高代码的效率
synchronized(YanChi.class) { //静态同步的锁是类的字节码文件。也就是类名.class
if(y == null) {
y = new YanChi();
}
}
}
}
}
作者:
追逐
时间:
2014-3-18 15:49
第一个发的有点小问题。这个是解决后的。望观看的朋友见谅
/*
需求:
写一个延迟加载的单例设计模式示例(也就是单例设计模式中的懒汉式)
*/
class YanChi {
private static YanChi y = null; //先自己创建一个属于自己的对象
private YanChi() {} //写一个空参数的构造函数;
public static YanChi getInstance() { //因为存在安全隐患问题,加上同步,而且是静态同步
if(y == null) { //追加一层判断。提高代码的效率
synchronized(YanChi.class) { //静态同步的锁是类的字节码文件。也就是类名.class
if(y == null) {
y = new YanChi();
}
}
}
return y;
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2