五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《游戲編程模式》筆記——單例模式

2023-09-05 18:56 作者:黑白色的楓  | 我要投稿

單例模式

單例模式就是說一個類有且只有一個對象。

這個類會把構造函數(shù)私有化,自己創(chuàng)建自己的實例,并提供給外部。

靜態(tài)的instance保存了類的實例,私有的構造函數(shù)保證了實例的唯一,Instance提供給了外部任意位置訪問實例的方式。

好處

節(jié)省了一點性能,如果沒有人用,就不會創(chuàng)建實例。

只在運行時實例化,相比靜態(tài)成員在main函數(shù)運行前的自動初始化,懶漢模式的延遲加載都會在運行后盡可能晚的初始化,使單例成員之間的相互依賴更加可靠。

可以被繼承,這使得單例模式的使用方式更加靈活一些。除了作為父類,讓子類更容易實現(xiàn)單例外,也可以在父類調用實例的時候根據(jù)情況返回不同的子類對象。

壞處

增加耦合,因為隨處都可以調用,單例類的使用可能會遍布整個項目的代碼。

懶加載可能會導致在不想要的地方增加性能消耗,懶加載的實例化的時間點是未知的,可能會在正在進行大量計算的時間點進行初始化,加重了性能消耗。

最后

不要濫用單例模式,考慮清楚是否需要單例類,有可能只需要靜態(tài)函數(shù)就能解決的問題,就不要做成單例模式了。

也可以嘗試合并單例類,將一些小的管理類歸屬到一個大的管理類中。

Mono單例

這是一個簡單的MonoBehaviour單例的父類。

私有化instance并且在Awake階段判斷是否已有實例,如果沒有實例,第一個實例就成為這個單例的唯一實例,并且場景切換時不銷毀。后續(xù)重復創(chuàng)建的實例都會銷毀自己保證實例的唯一性。


參考

《游戲編程模式》

《游戲編程模式》筆記——單例模式的評論 (共 條)

分享到微博請遵守國家法律
江永县| 尤溪县| 改则县| 定州市| 汉川市| 吉木乃县| 高唐县| 淮安市| 伊金霍洛旗| 诸暨市| 土默特左旗| 永福县| 普陀区| 黄陵县| 醴陵市| 鄂伦春自治旗| 塔河县| 达日县| 泌阳县| 长春市| 弥渡县| 兴国县| 民丰县| 龙口市| 张家川| 孝感市| 望城县| 偃师市| 岐山县| 略阳县| 皋兰县| 海城市| 榆树市| 句容市| 自治县| 泽普县| 东乌珠穆沁旗| 绥中县| 察哈| 杭锦旗| 五常市|