餓漢式單例和懶漢式單例比較

2021-06-28 03:54:47 字數 396 閱讀 4065

餓漢式單例:

public class singleton

public static singleton getinsance()

}

懶漢式單例 :

public class singleton

/** 必須加同步關鍵字synchronized,為了避免多執行緒同時訪問時,建立多個例項

*/public synchronized static singleton getinsance()

return singleton;

}}

餓漢式單例不涉及執行緒安全問題,也不需要加條件判斷,效能更好一點,  相比較而言,餓漢式單例也是用得最多的。

餓漢式單例和懶漢式單例

當我們想要乙個類只產生乙個例項化物件時,就需要用到單例模式,單例設計模式分為兩種 餓漢式和懶漢式。1 餓漢式單例 當用到這個類時,不管是否需要乙個物件都會建立乙個例項化物件 public class singleton public static singleton getinstance publ...

單例(懶漢式單例 餓漢式單例)

public class singleton private static singleton instance new singleton public static singleton getinstance public class singleton public static synchr...

懶漢式單例和餓漢式單例優缺點

1 時間和空間 比較上面兩種寫法 懶漢式是典型的時間換空間,也就是每次獲取例項都會進行判斷,看是否需要建立例項,浪費判斷的時間。當然,如果一直沒有人使用的話,那就不會建立例項,則節約記憶體空間。餓漢式是典型的空間換時間,當類裝載的時候就會建立類例項,不管你用不用,先建立出來,然後每次呼叫的時候,就不...