java单子模式代码 java设计模式之单例模式

java高手能给我看一下以下的单例模式的代码吗? 要详细解答哦。

第二个单例代码不严谨,可能会创建出多个实例。比如有两个线程同时访问getInstance(),当第一个线程进入synchronized块但还没有new的时候,第二个线程也走到if处,这个时候uniqueInstance =null,if返回true,第二个线程就进入了if块,但在synchronized块外面等待,然后第一个线程创建实例,第二个线程也能成功创建实例。

创新互联公司专注于南召企业网站建设,响应式网站,商城网站制作。南召网站建设公司,为南召等地区提供建站服务。全流程按需策划设计,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务

不知道我说得够不够清楚。你可以看看《effective Java》这本书,里面有专门讲到这个问题。

如何用Java实现单例模式

单例模式:就是一个类仅创建一个对象;

public class Singleton {

private static volatile Singleton singleton = null;

private Singleton(){}// 构造方法

public static Singleton getSingleton(){// 单例模式

if(singleton == null){

synchronized (Singleton.class){

if(singleton == null){

singleton = new Singleton();

}

}

}

return singleton;

}    

}

JAVA 采用单例设计模式设计日志处理类,并写出代码

import java.util.Date;

public class Logger {

private static Logger instance;

private static Class clazz;

private Logger() {

}

private Logger(Class clazz) {

this.instance = new Logger();

this.clazz = clazz;

}

public static Logger getLogger(Class clazz) {

if (instance == null) {

synchronized (Logger.class) {

if (instance == null) {

instance = new Logger(clazz);

}

}

}

return instance;

}

public void info(String msg) {

System.out.println(clazz.getName() + "[" + new Date().toLocaleString()

+ "][info]:" + msg);

}

public void error(String msg) {

System.out.println(clazz.getName() + "[" + new Date().toLocaleString()

+ "][error]:" + msg);

}

public void warn(String msg) {

System.out.println(clazz.getName() + "[" + new Date().toLocaleString()

+ "][warn]:" + msg);

}

public void log(String msg) {

System.out.println(clazz.getName() + "[" + new Date().toLocaleString()

+ "][log]:" + msg);

}

public static void main(String args[]) {

Logger s = Logger.getLogger(String.class);

s.info("普通消息");

}

}


文章名称:java单子模式代码 java设计模式之单例模式
分享网址:http://bzwzjz.com/article/doioggo.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站设计 外贸营销网站建设 成都网站设计 app网站建设 教育网站设计方案 企业网站设计 广安网站设计 成都企业网站制作 成都网站建设 定制网站建设 成都网站设计公司 网站制作 成都定制网站建设 四川成都网站制作 LED网站设计方案 成都网站制作 自适应网站设计 成都网站制作 成都营销网站制作 网站设计 高端网站设计 成都网站建设