国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

JAVA多線程下創建單例的正確方式

2019-11-14 12:40:26
字體:
來源:轉載
供稿:網友

一、不注重性能的情況

package singleton;public class SlowSingleton {    PRivate static SlowSingleton instance;    private SlowSingleton() {    };    public static synchronized SlowSingleton getInstance() {        if (instance == null) {            instance = new SlowSingleton();        }        return instance;    }}二、注重性能,急切創建實例的方案

package singleton;public class FastSingleton {    private static FastSingleton instance = new FastSingleton();    private FastSingleton() {    };    public static FastSingleton getInstance() {        return instance;    }}

這種方法的缺點是:不能延遲實例化

三、注重性能,double check 方案

package singleton;public class DoubleCheckSingleton {    private volatile static DoubleCheckSingleton instance;    private DoubleCheckSingleton() {    };    public static DoubleCheckSingleton getInstance() {        if (instance == null) {            synchronized (DoubleCheckSingleton.class) {                if (instance == null) {                    instance = new DoubleCheckSingleton();                }            }        }        return instance;    }}四、注重性能,靜態內部類方案
package singleton;public class MagicSingleton {    private static class SingletonHolder {        private static final MagicSingleton INSTANCE = new MagicSingleton();    }    private MagicSingleton() {    }    public static final MagicSingleton getInstance() {        return SingletonHolder.INSTANCE;    }}

五、注重性能,枚舉類方案

package singleton;public enum EnumSingleton {    INSTACE;         public static EnumSingleton getInstance() {        return INSTACE;    }         public void someMethod(){        System.out.println("ooo");    }         // 使用方法    public static void main(String[] args) {        EnumSingleton.INSTACE.someMethod();        // 或者        EnumSingleton.getInstance().someMethod();    }}


上一篇:190. Reverse Bits

下一篇:字符串逆序

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 张家港市| 新宾| 卫辉市| 南通市| 巴彦淖尔市| 同仁县| 博白县| 仁布县| 昌吉市| 木兰县| 肥东县| 枣庄市| 西丰县| 西安市| 平顶山市| 黄冈市| 沭阳县| 化州市| 灵寿县| 仁布县| 桃园市| 和林格尔县| 奇台县| 青龙| 出国| 禹州市| 沂水县| 前郭尔| 松潘县| 陆川县| 望都县| 吉首市| 怀远县| 遵义县| 隆林| 荆州市| 衡阳市| 梧州市| 清远市| 静安区| 宁城县|