介面與抽象類別

來源:互聯網
上載者:User
          關於介面與抽象類別的討論很多,但是很多討論往往讓人迷糊,甚至將人引向歧途,一方面是關於介面一詞的濫用或者不適當的使用(這裡有翻譯的原因,也有文化的原因),另一方面是作者或有意無意的誤導。我想首先關於這兩個術語的討論應該界定在編程範圍以內,方不至於引起過多的聯想。關於二者的關係,一言以蔽之:介面是關於行為的抽象,而抽象類別是對象的抽象。在實際的編程實踐中,二者通常是結合在一起使用的,而且往往是只有結合在一起使用才能夠達到更好的效果。
        在《設計模式》一書中,有面向介面編程的說法,這個說法其實造成了某種程度上的誤導,結果我們對介面特別的重視,好像沒有了介面就不行,因此介面滿天飛,造成介面的濫用,反思我們的產品開發,其實也犯了這樣的錯誤。應該是需要介面的時候才需要定義介面。
        抽象類別通常是實現介面的。抽象類別中應該包括了對象的基本屬性,和對某些行為的預設實現。合理的使用抽象類別是非常明智的做法。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.