類 抽象類與介面

2021-08-27 15:36:55 字數 1102 閱讀 7052

介面的關鍵字

:inte***ce

介面的作用

:作為資料型別、充當父類給子類擴充套件;

定義介面的語法格式

:public inte***ce 介面名 extends 介面名,...

注意:介面預設的訪問修飾符為public、介面不能例項化物件;

定義類實現介面的語法格式是:

public class 類名 implements 介面名,... 

普通類class與介面inte***ce的區別:

1.class的訪問修飾符可以是:public、protected、預設的、private

而介面只有預設的訪問修飾符:public;

2.class可以定義屬性、普通方法、構造方法,而介面中只能定義常量和抽象方法;

3.class中可以例項化物件並呼叫方法,而介面不能例項化物件;

4.class可以繼承另乙個class,但子類只能繼承乙個父類(單繼承),乙個class可以通過implements實現多個介面,多個介面名之間用逗號隔開;而乙個

inte***ce

可以繼承多個介面,被繼承的介面之間也是用逗號隔開;乙個 class可以繼承另乙個class後再實現多個介面;

5.子類繼承父類的方法可以實現也可以不實現,而class繼承

inte***ce

的方法一定要實現,並且在實現介面的方法時,不能縮小方法的可見性;

抽象類:抽象類就是介於類和介面之間的一種特殊的類。

定義抽象的關鍵字

:abstract class

定義抽象類的格式

:public abstract class 抽象類名 extends 類名或者抽象類 implements 介面名,... 

**例子:

定義乙個類實現介面

/**

* 定義乙個person介面

* */

public inte***ce person

/** * 學生類,實現person介面

*/public class student implements person

public void eat()

介面類與抽象類

首先 從表面區別來看,介面是只有方法宣告,沒有方法體。抽象類有方法體和實現,而且還可以有屬性特徵。其次 為什麼不能全部用抽象代替介面,因為介面強調的是動作的繼承,而不是所有東西都繼承,抽象只能是純粹的繼承了。考慮乙個問題,如果乙隻狗和乙隻候子都有爬樹的功能,如果用介面,大家實現爬樹就行了,如果用抽象...

介面與抽象類

介面與抽象類區別 個人總結 語法結構 1 型別可以繼承多個介面,但是只能繼承乙個抽象類,即不支援多重繼承。2 介面可以用於值型別和引用型別,例如struct和class,而抽象類不能用於值型別,只能用於引用型別。3 抽象類定義可以包括建構函式,字段資料,非抽象成員 具體實現 等,而介面只能包括抽象成...

介面與抽象類

抽象類 當抽象類作為父類時,他的子類對其中的抽象類方法有不同的方法體 簡單舉例為 classhorse mammal,ilangbound public int numeroflegs return 4 inte ce ilandbound int numberoflegs 介面例子 main函式 ...