抽象類和介面的相同點和不同點

2022-08-31 08:39:10 字數 687 閱讀 2712

抽象類和介面

相同點:都不能被例項化,位於繼承樹的頂端,都包含抽象方法

不同點:1、設計目的:介面體現的一種規範,類似與整個系統的總綱,制訂了系統各模組應該遵循的標準,因此介面不應該經常改變,一旦改變對整個系統是輻射性的。

抽象類作為多個子類的共同父類,體現的是一種模板式設計,可以當作系統實現過程中的中間產品,已經實現了系統部分功能。

2、使用不同:(1)介面只能包含抽象方法,抽象類可以包含普通方法。

(2)介面裡不能定義靜態方法,抽象類可以。

(3)介面只能定義靜態常量屬性不能定義普通屬性,抽象類可以。

(4)介面不包含構造器,抽象類可以(不是用於建立物件而是讓子類完成初始化)。

(5)介面裡不能包含初始化塊,抽象類完全可以。

(6)介面多繼承,抽象類但繼承(只能有乙個直接父類)。

總結:介面所有方法全是抽象方法只能public abstract修飾(預設public abstract修飾),屬性預設public static final修飾。

抽象類除了包含抽象方法外與普通類無區別。

note 抽象類和介面的相同點和不同點

今天偶爾看到以前的筆記,所謂溫故而知新所以記錄一下,以便以後查閱。抽象類和介面的相同點和不同點 相同點 1.都不能被直接例項化,都可以通過繼承實現其抽象方法 2.都是物件導向的技術基礎,實現了諸多設計模式 不同點 1.介面支援多繼承,抽象類不能實現多繼承。2.介面只能定義抽象規則,抽象類即可以定義抽...

抽象類和介面的相同點和不同點,學習筆記

抽象類和介面的相同點 1.都不能被例項化 2.介面的實現類或抽象類的子類都只有實現了介面或抽象類中的方法後才能被例項化 不同點 1.介面只有定義,其方法不能再介面中實現,只有實現介面的類才能實現介面中定義的方 法,而抽象類的方法可以再抽象類中被實現。2.介面需要用implements實現,抽象類只能...

介面與抽象類的相同點和不同點

相同點 都不能被直接例項化,都可以通過繼承實現其抽象方法。都是面向抽象程式設計的技術基礎,實現了諸多的設計模式。不同點 介面支援多繼承 抽象類不能實現多繼承。介面只能定義抽象規則 抽象類既可以定義規則,還可能提供已實現的成員。介面是一組行為規範 抽象類是乙個不完全的類,著重族的概念。介面可以用於支援...