介面和抽象類的區別和聯絡

2022-07-23 11:15:17 字數 846 閱讀 3910

(1) 介面不能被例項化

(2) 介面只能包含方法宣告

(3) 介面的成員包括方法、屬性、索引器、事件

(4) 介面中不能包含常量、字段(域)、建構函式、析構函式、靜態成員

(5) 介面中的所有成員預設為public,因此介面中不能有private修飾符

(6) 派生類必須實現介面的所有成員

(7) 乙個類可以直接實現多個介面,介面之間用逗號隔開

(8) 乙個介面可以有多個父介面,實現該介面的類必須實現所有父介面中的所有成員

(1) 抽象方法只作宣告,而不包含實現,可以看成是沒有實現體的虛方法

(2) 抽象類不能被例項化

(3) 抽象類可以但不是必須有抽象屬性和抽象方法,但是一旦有了抽象方法,就一定要把這個類宣告為抽象類

(4) 具體派生類必須覆蓋基類的抽象方法

(5) 抽象派生類可以覆蓋基類的抽象方法,也可以不覆蓋。如果不覆蓋,則其具體派生類必須覆蓋它們。

(1) 都可以被繼承

(2) 都不能被例項化

(3) 都可以包含方法宣告

(4) 派生類必須實現未實現的方法

1.介面規定了你能做什麼,而抽象類定義了你是什麼。

2. ① 飛機會飛,鳥會飛,他們都繼承了同乙個介面「飛」;但是f22屬於飛機抽象類,鴿子屬於鳥抽象類。

② 就像鐵門木門都是門(抽象類),你想要個門我給不了(不能例項化),但我可以給你個具體的鐵門或木門(多型);而且只能是門,你不能說它是窗(單繼承);乙個門可以有鎖(介面)也可以有門鈴(多實現)。 門(抽象類)定義了你是什麼,介面(鎖)規定了你能做什麼(乙個介面最好只能做一件事,你不能要求鎖也能發出聲音吧(介面汙染))。

介面和抽象類的區別和聯絡

介面和抽象類的區別和聯絡 1 介面和抽象類都不能產生物件。介面變數只能指向實現類物件,抽象類變數只能指向子類物件。2 乙個類實現介面或者乙個類繼承乙個抽象類,都必須實現介面或抽象類中定義的所有抽象方法。否則該類只能是抽象類。3 抽象類中可以定義抽象方法也可以定義具體方法。但介面中只能定義抽象方法。4...

介面和抽象類的區別和聯絡

具體 介面和抽象類有什麼區別 你選擇使用介面和抽象類的依據是什麼?介面和抽象類的概念不一樣。介面是對動作的抽象,抽象類是對根源的抽象。抽象類表示的是,這個物件是什麼。介面表示的是,這個物件能做什麼。比如,男人,女人,這兩個類 如果是類的話 他們的抽象類是人。說明,他們都是人。人可以吃東西,狗也可以吃...

介面和抽象類區別和聯絡 面試必備

抽象類 概念 抽象類不能建立例項,它只能作為父類被繼承。抽象類是從多個具體類中抽象出來的父類,它具有更高層次的抽象。從多個具有相同特徵的類中抽象出乙個抽象類,以這個抽象類作為其子類的模板,從而避免了子類的隨意性。特點 抽象類無法被例項化 因為它不是具體的類,但是有構造方法 抽象類有構造方法,是給子類...