C#中介面和抽象類的區別是什麼?


介面定義屬性、方法和事件,這些都是介面的成員。介面只包含成員的宣告。派生類負責定義這些成員。

抽象類在某種程度上也實現了同樣的目的,但是它們主要用於基類只需要宣告少量方法,而派生類實現其功能的情況。

以下是一些區別:

  • 一個類可以繼承多個介面,而一個類只能繼承一個抽象類。

  • 不能使用抽象類實現多重繼承,而使用介面可以實現多重繼承。

  • 介面中不能定義欄位,而抽象類中可以定義欄位。

  • 介面沒有 public、private、protected、internal 等訪問修飾符,因為在介面中所有內容預設都是 public 的。

更新於:2020年6月22日

477 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告