1.抽象類的變數和方法無限制,子類通過構造方法鏈呼叫構造方法,抽象類不能用new 操作符實現例項化。
2.介面所有的變數必須是public static final,沒有建構函式,介面不能用new操作符例項化,介面可以包含public的抽象例項方法,預設方法以及靜態方法。
3.乙個類可以實現多個介面,但是只能繼承乙個父類。
4.介面可以繼承其他介面,但不能繼承類。
5.類時乙個名詞,介面可以是形容詞和名詞。
6.所有的類共享乙個根類object,但是介面沒有共同的根。與類相似,介面也可以定義一種型別。乙個介面的變數可以引用任何實現該類的例項。如果乙個類實現了乙個介面,那麼這個介面就類似於該類的乙個父類。可以將介面當做一種資料型別使用,將介面型別的變數轉換為它的子類。
7.清晰描述父子關係的強的「是...的一種」關係,應該用類建模。弱的「是...一種」關係也稱為類屬關係,它表明物件擁有某種屬性,可以用介面來建模。例如所有的字串都是可比較的,因此,string類實現了comparable介面。
介面和抽象類
介面和抽象類 今天自學了一下介面,從第一次接觸介面又進一步理解介面的原理。想到介面或許我們更多的是想到和類的對比,而類中抽象類和介面又更為相似。現在我講下我對介面和抽象類的理解。如果單從具體 來看,對這兩個概念很容易模糊,甚至覺得介面就是多餘的,因為單從具體功能來看,除多重繼承外 c 抽象類似乎完全...
抽象類和介面
抽象類 1.是一種特殊的類,除了不能被例項化外,具有類得其他特性.2.抽象類的方法可以不宣告為abstract,此時可以實現方法提 如果宣告為abstract,則不可以實現方法體,只能宣告,如 public abstract int remove int i,int j 此時類必須宣告為抽象 3.乙...
抽象類和介面
1.抽象類 含有abstract修飾符的類即為抽象類。可用於實現 重用。抽象類與普通類的唯一區別 不能建立例項物件 允許有抽象方法,但不必須是抽象的。抽象類中定義的抽象方法必須在具體子類中實現,所以不能有抽象構造方法或抽象靜態方法 如果沒有全部實現抽象父類的抽象方法,子類也要定義為抽象型別。2.介面...