亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

靜態類和單例模式的區別?

靜態類和單例模式的區別?

靜態類和單例模式的區別?靜態類和單例模式之間有什么實際的(即實際的)區別?它們都可以在不實例化的情況下被調用,它們都只提供一個“實例”,而且它們都不是線程安全的。還有什么區別嗎?
查看完整描述

4 回答

?
拉風的咖菲貓

TA貢獻1995條經驗 獲得超2個贊

是什么使您說單例或靜態方法都不是線程安全的?通常都是實現為線程安全。

單例和一組靜態方法之間的最大區別是,單例可以實現接口(或者派生自有用的基類,盡管在我的經驗中不那么常見),所以您可以像“只是另一個”實現一樣傳遞單例。


查看完整回答
反對 回復 2019-06-01
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

單例允許訪問單個創建的實例-該實例(或者更確切地說,是對該實例的引用)可以作為參數傳遞給其他方法,并將其視為正常對象。

靜態類只允許靜態方法。


查看完整回答
反對 回復 2019-06-01
?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

  1. 單例對象存儲在

    ,但是靜態對象存儲在

    堆疊.

  2. 我們可以的

    克隆

    (如果設計器不允許)單例對象,但是我們不能克隆靜態類對象。
  3. 單例類遵循

    OOP

    (面向對象的原則),靜態類不。
  4. 我們可以實現

    interface

    使用Singleton類,但是類的靜態方法(或例如C#)

    static class

    )不能。


查看完整回答
反對 回復 2019-06-01
?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

Singleton模式與靜態類相比有幾個優點。首先,單例可以擴展類和實現接口,而靜態類不能(它可以擴展類,但不繼承它們的實例成員)。單例可以延遲或異步初始化,而靜態類通常是在首次加載時初始化的,這會導致潛在的類加載程序問題。然而,最重要的優點是,單例可以在不強迫用戶假設只有一個實例的情況下進行多態處理。


查看完整回答
反對 回復 2019-06-01
  • 4 回答
  • 0 關注
  • 3322 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號