單例模式的主要實現

2021-09-26 09:29:24 字數 1277 閱讀 5492

package single.doublecheck;

/** * create by

* * @author luozhiyuan

* @on 2019-08-22.

* @time 14:26

*/// final不允許被繼承

public final class singleton

public static singleton getinstance()}}

return instance;

}}

package single.holder;

/** * create by

* * @author luozhiyuan

* @on 2019-08-22.

* @time 14:54

*/// 不允許被繼承

public final class singleton

// 在靜態內部類中持有singleton的例項,而且可被直接初始化

private static class holder

// 呼叫getinstance方法,事實上獲取holder的instance屬性

public static singleton getinstance()

}

package single.enumsingle;

/** * create by

* * @author luozhiyuan

* @on 2019-08-22.

* @time 15:09

*/// 列舉型別本身就是final的,不允許繼承的

public enum singleton

public static singleton getinstance()

}

package single.enumsingle;

/** * create by

* * @author luozhiyuan

* @on 2019-08-22.

* @time 15:44

*/public class singleton

// 使用列舉充當holder

private enum enumholder

private singleton getinstance()

}public static singleton getinstance()

}

單例模式的實現

單例設計模式保證類在記憶體中只存在乙個物件。根據不同的策略,單例類的實現有以下幾種方式。1.立即載入 在載入類的同時例項化物件,設計要點如下 1 私有化構造方法 2 宣告並例項化本類物件 靜態 3 提供公有靜態方法獲取物件。code 1 public class eagersingleton oth...

單例模式的實現

單例模式估計是咱們碰到最多也是最簡單的一種設計模式了 也是面試中經常會遇到的面試題 單例模式保證乙個類只有乙個例項,比如咱們在android應用中登入成功之後儲存使用者資訊就會優先考慮單例模式。單例模式有六種常規的寫法 餓漢式 懶漢式 執行緒不安全 懶漢式 執行緒安全 dcl雙重校驗模式 靜態內部類...

單例模式的實現

單例模式的實現需要考慮的因素有很多。對於常常出現的double checked實現單例模式實際上是不安全的實現 private static singleton instance public static singleton getinstance 因為jit可以在singleton的構造方法被執...