餓漢模式vs懶漢模式

2021-09-28 15:21:10 字數 1208 閱讀 9849

//餓漢式:建立物件例項的時候直接初始化  空間換時間

public

class

singletonone

//2、建立該型別的私有靜態例項

private

static singletonone instance=

newsingletonone()

;//3、建立公有靜態方法返回靜態例項物件

public

static singletonone getinstance()

}

public

class

earth

//定義私有靜態類物件並完成例項化

private

static earth earth=

newearth()

;//定義公有靜態方法返回類內的私有靜態物件

public

static earth getearth()

}

public

class

test

}

//懶漢式:類內例項物件建立時並不直接初始化,直到第一次呼叫get方法時,才完成初始化操作

//時間換空間

public

class

singletontwo

//2、建立靜態的該類例項物件

private

static singletontwo instance=null;

//3、建立開放的靜態方法提供例項物件

public

static singletontwo getinstance()

}

public

class

emperor

//定義私有靜態類物件

private

static emperor emp=null;

//定義公有靜態方法返回類內的私有靜態物件

public

static emperor getemp()

return emp;

}}

public

class

test

}

缺點 使用場景

單例模式 餓漢 vs懶漢

package 單例模式 應用場景 保證在整個應用之中某個物件的例項只有乙個 單例模式種的 懶漢模式 public class singleton 02 申明類得唯一例項 private static singleton instance null 為外界提供獲得例項的方法 public stati...

餓漢模式和懶漢模式

package pattern.singleton 餓漢式單例類.在類初始化時,已經自行例項化 public class singleton1 已經自行例項化 private static final singleton1 single new singleton1 靜態工廠方法 public st...

懶漢模式與餓漢模式

懶漢模式 加截類的時候就建立物件 class single private static single s new single pubic static single getinstance 餓漢模式 呼叫getinstance 方法時才建立物件 class single private stat...