父類、抽象類、介面常常搞混,到最後分不清楚他們出現的原因,以及使用的場景,下面來解密。
當我們多個類中存在共同的方法的時候,把共同方法抽象出來放到父類中,然後再把這種特徵從父類中繼承下來。這樣符合我們物件導向的本質,根據現實世界的本質來設計的語言。
寵物類class pet }
狗類class dog extends pet }
貓類class cat extends pet }
我們發現在例項化物件的時候父類被例項後是沒有實際意義的,也不會存在父類這種動物的,故提出了抽象類
抽象abstract類規定:
這樣可以看出來,抽象類也就是特殊的父類,也可以有普通方法和父類一樣,只不過不支援被例項化。
抽象類只能被繼承一次,而有時候我們需要繼承多個類的特性。故提出了介面。
介面規定:
inte***ce
person
public
class
demo};
p.eat();
}}
內部類 抽象類 介面
b color brown size large 1.內部類也稱為巢狀類。內部類允許乙個類被定義在另乙個類,或乙個語句甚至乙個表示式中。在一般的內部類中是不允許宣告任何static成員的。只有頂層類可以宣告。如果要在一般內部類中使用static成員,必須引用在頂層類中宣告好的成員。外部類可以呼叫靜態...
內部類,抽象類和介面
abstract普通類繼承抽象類要把抽象類中的所有抽象方法都覆蓋,抽象類繼承抽象類不用。抽象類不能被建立物件。普通類不能有抽象方法,抽象類可以有普通方法。建立了抽象父類的物件new後面是子類物件是可以實現的。implements用來繼承介面,inte ce介面中不存在具體的方法,介面中只存在抽象方法...
抽象類 介面和內部類
1.1 使用抽象類 1.1.1.抽象方法和抽象類 由abstract修飾的方法為抽象方法,抽象方法即只有方法的定義,沒有方法體實現,用乙個分號結尾。即方法五要素中,抽象方法缺少了乙個要素 即 方法體 也可以將抽象方法理解為不完整的方法。若將抽象方法包含在類中,則該類也應該為抽象的,可以理解為,該類也...