Java正确编写单例

来源:互联网 发布:数控铣手工编程 编辑:程序博客网 时间:2024/06/06 00:31

来一个正确的示范

import java.util.HashSet;/** * Created by moon on 16/4/8. * 在一些JIT编译器上,双重检查锁定会涉及到重排序问题的 * 需要使用valotile禁止重排序操作 */public class MySingleton {    //这里的volatile很关键    private volatile static MySingleton singleton;    public static MySingleton getMySingleton(){        //第一次检查        if (singleton == null) {            synchronized (MySingleton.class) {                if (singleton == null) {                    singleton = new MySingleton();                }            }        }        return singleton;    }}
0 0