五月天青色头像情侣网名,国产亚洲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)建的實例都會銷毀自己保證實例的唯一性。


參考

《游戲編程模式》

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

分享到微博請遵守國家法律
南丰县| 绍兴市| 龙川县| 正蓝旗| 高邑县| 秭归县| 吕梁市| 瑞昌市| 宁晋县| 上栗县| 卢湾区| 花莲市| 道孚县| 彩票| 黄浦区| 赣榆县| 凯里市| 乌兰察布市| 六安市| 广南县| 新邵县| 长治市| 盘锦市| 辽阳县| 内丘县| 怀化市| 金寨县| 沙坪坝区| 台中县| 贡觉县| 张家界市| 山阳县| 莲花县| 驻马店市| 云和县| 子洲县| 府谷县| 呼图壁县| 霍山县| 扎鲁特旗| 永康市|