設計模式 結構型模式 享元模式

2021-07-25 07:52:04 字數 1124 閱讀 1024

享元模式:使用同乙個物件,有一些物件不想重複建立,想使用乙個

與單例的區別:建立物件是自身控制,還是交由乙個工廠控制

string字串的記憶體分配使用了享元模式

字元父類

public abstract class baseword

l類

public class l : baseword

public override string getword()

}

o類

public class o : baseword

public override string getword()

}

工廠**

public class xiangyuan}}

return dicall[lolw.tostring()];

case lolwords.o:

if (!dicall.containskey(lolw.tostring()))}}

return dicall[lolw.tostring()];

default:

return null;}}

}public enum lolwords

呼叫

//輸出lolo

baseword l = xiangyuan.getwords(lolwords.l);

baseword o = xiangyuan.getwords(lolwords.o);

baseword l1 = xiangyuan.getwords(lolwords.l);

baseword o1 = xiangyuan.getwords(lolwords.o);

console.writeline(",,,",l.getword(),o.getword(),l1.getword(),o1.getword());

結果:

只建立了一次

設計模式 結構型模式 享元模式

圍棋棋子類 抽象享元類 abstract class igochessman 黑色棋子類 具體享元類 class blackigochessman extends igochessman 白色棋子類 具體享元類 class whiteigochessman extends igochessman 圍...

設計模式 結構型模式 享元模式

運用共享技術來有效地支援大量細粒度物件的復用。它通過共享已經存在的物件來大幅度減少需要建立的物件數量 避免大量相似類的開銷,從而提高系統的資源利用率。本質是快取共享物件,降低記憶體消耗。優點相同物件只要儲存乙份,以此降低系統中物件的數量,從而降低系統中細粒度物件給記憶體帶來的壓力。缺點為了使物件可以...

結構型模式 享元模式

七大結構型模式之六 享元模式。姓名 享元模式 英文名 flyweight pattern 價值觀 共享富貴 個人介紹 use sharing to support large numbers of fine grained objects efficiently.使用共享物件可有效地支援大量的細粒度...