介面的關鍵字
: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函式 ...