java設計模式之 單例模式

2021-08-27 17:26:19 字數 615 閱讀 9511

保證乙個類僅有乙個例項,提供乙個訪問這個例項的全域性訪問點

適用性:

1. 當類只有乙個例項而客戶可以從乙個眾所周知的訪問點訪問時。

2. 當這個唯一例項是通過子類可擴充套件的,並且客戶應該無需更改**就能適用乙個擴充套件的例項時。

注意:單例模式中有三個注意點:

1, 單例模式類中的引用必須是私有靜態的,因為它以後要在靜態的方法中被使用。

2, 單例模式類中的無參建構函式,必須是private,因為不讓外界創造該類的物件

3, 單例模式還有另一種寫法,就是在建構函式中把那個物件創造好,

**例子:

package com.supan.io;

public classsingletonpattern

public static singletonpatterngetinstance()

return instance;

}}

測試類**:

package com.supan.io;

public classsingletonpatterntest

}

列印結果:

java設計模式之單例模式

單位面試題目中有一道關於單例模式的題目.大多數參加筆試的同事都會寫出getinstance這個函式,但是當我問起什麼情況下需要使用單例 單例具體有什麼好處的時候 static函式也可以構建唯一例項,為什麼還需要單例.從使用單例的經驗來看,如下場景下,個人感覺應該使用單例 1.如果需要構建乙個工具類,...

java設計模式 之 單例模式

單例模式 有些類在程式執行過程中只需要儲存乙個例項,比如檔案管理類,音訊管理類,那麼我們如何實現乙個單例類呢?有以下幾點 1 定義乙個靜態變數 2 建構函式私有化 3 提供乙個public 靜態方法,獲取這個例項 4 一定要做執行緒同步 public static class singleton p...

Java設計模式之單例模式

說到單例模式 大家一定非常熟悉 這是最常見也是設計模式中相對簡單 好理解的設計模式 今天就跟大家掰一掰單例模式 單例模式確保某個類只有乙個例項 應用場景 執行緒池 快取 等物件常常被設計成單例 然而單例分兩種 1 惡漢式 2 懶漢式 我們先來看下 惡漢式 public class singleton...