Android單例模式的三種寫法個人總結

2021-07-29 16:02:55 字數 1363 閱讀 2669

第一種:懶漢模式

所有的單例模式都要有乙個私有的靜態的本類的物件,所以開頭都會寫private static 類名 物件;

然後還有乙個就是都要有乙個私有的的構造方法;是為了防止外部呼叫的時候進行初始化;這樣就確保了只有在呼叫的時候;自己控制初始化;

接下來就要寫乙個公共的方法;裡面要巢狀這個類的初始化的方式了;

public class 

singleton

public static

singleton getinstance

()}}return

singleton

;}}

所以現在來分析上面的單例模式,其他的兩個方式都差不多相同,在這個初始化類的的時候,要進行判斷是否有這個物件的存在,如果沒有,加乙個同步鎖,以防止多執行緒的時候呼叫多個物件出來,然後在進行一次判斷,是不是為空,為空就建立乙個新的物件,並返回這個物件;

第二種;懶漢式;

public class 

twosingle

private

twosingle

()public static

twosingle getintanstance

()}

這個懶漢式的寫法,是李永樂靜態內部類的特點;使用的時候才架子啊;即只有第一次使用的時候才會載入

這樣既可以實現執行緒安全;有避免了同步帶來的效能的影響

第三種:餓漢式

public class 

single

public static

single getinstance

()}

這種寫法,**顯得更簡單;效能上更快,因為在這個類建立的時候就已經呼叫存在了,

單例模式的三種寫法

這裡介紹三種單例模式寫法。第一種 餓漢模式 類載入時就初始化 public class singletonhungry public static singletonhungry getinstance 第二種 懶漢模式 類載入時不初始化,當呼叫getinstance方法時初始化 public cl...

單例模式的三種實現

class singleton public static singleton getinstance 缺點 類每次使用時都會初始化靜態成員變數 呼叫該類的其它方法時也會初始化 浪費記憶體。class singleton public static singleton getinstance ret...

單例模式的三種寫法

創造型模式 單例模式 餓漢式 推薦優點 在類載入的時候就已經建立好了例項,沒有執行緒同步的問題 缺點 如果這個例項從始至終都沒有用到,那麼就會造成記憶體浪費 方法一 使用靜態物件 public class singleton 提供乙個靜態方法返回例項物件 public static singleto...