1.抽象類的成員特點:
a.成員變數:既可以是變數,也可以是常量;
b.構造方法:有,用於子類訪問父類資料的初始化;
c.成員方法:既可以是抽象(無方法體),也可以是非抽象的;
2.成員方法的特性:
a.抽象方法:強制要求子類做的事情;
b.非抽象方法:子類繼承的事情-提高**的復用性;
3.介面的特點:
a.介面用關鍵字inte***ce表示
inte***ce 介面名{}
b.類實現介面用implements表示
class 類名 implements 介面名 {}
c.介面不能例項化
如何實現例項化?多型。
d.介面的子類
a:抽象類,意義不大。
b:具體類,要重寫介面中的所有抽象方法。
由此可見:
a.具體多型(幾乎沒有)
b.抽象類多型(常用)
c.介面多型(最常用)
4.介面成員特點:
a.成員變數:只能是常量,並且是靜態的。
預設修飾符:public static final
建議自己手動給出
b.構造方法:沒有構造方法;
(所有類都預設繼承乙個類:object )
c.成員方法:只能是抽象的;
預設修飾符:public abstract
5.幾種關係:
a.類與類:繼承關係,只能單繼承,可以多層繼承;
b.類與介面:實現關係,可以單實現,也可以多實現;並且還可以在繼承乙個類的同時實現多個介面;
c.介面與介面:繼承關係,可以單繼承,也可以多繼承;
6.抽象類和介面的區別:
a.成員區別:
a.抽象類:
成員變數:可以變數,也可以常量;
構造方法:有;
成員方法:可以抽象,也可以非抽象;
b.介面:
成員變數:只可以常量;
成員方法:只可以抽象;
b.關係區別(如第五點
c.設計理念:
a.抽象類:被繼承的是:「is a」的關係。抽象類中定義的是該繼承體系的共性功能。
b.被實現體現的是:」like a」的關係。介面中定義的是該繼承體系的擴充套件功能。
介面和抽象類
介面和抽象類 今天自學了一下介面,從第一次接觸介面又進一步理解介面的原理。想到介面或許我們更多的是想到和類的對比,而類中抽象類和介面又更為相似。現在我講下我對介面和抽象類的理解。如果單從具體 來看,對這兩個概念很容易模糊,甚至覺得介面就是多餘的,因為單從具體功能來看,除多重繼承外 c 抽象類似乎完全...
抽象類和介面
抽象類 1.是一種特殊的類,除了不能被例項化外,具有類得其他特性.2.抽象類的方法可以不宣告為abstract,此時可以實現方法提 如果宣告為abstract,則不可以實現方法體,只能宣告,如 public abstract int remove int i,int j 此時類必須宣告為抽象 3.乙...
抽象類和介面
1.抽象類 含有abstract修飾符的類即為抽象類。可用於實現 重用。抽象類與普通類的唯一區別 不能建立例項物件 允許有抽象方法,但不必須是抽象的。抽象類中定義的抽象方法必須在具體子類中實現,所以不能有抽象構造方法或抽象靜態方法 如果沒有全部實現抽象父類的抽象方法,子類也要定義為抽象型別。2.介面...