Java面相物件
繼承專題
繼承
1:提高了程式碼的複用性
2:表達了類與類之間的關係。
3:千萬不要為了獲取其他類的功能而去選擇繼承,類與類之間必須有某種聯絡才可以用繼承,比如他們具有某種共性而去繼承,例如我下面的例子中,person類具有人類共有屬性年齡與姓名,而student類具有學習的功能,而工人具有工作的功能。但student與worker都繼承了person類的屬性,因為年齡與姓名是工人與學生共有的屬性。
4:繼承只支援單繼承,不支援多繼承。單繼承指a類為父類(或稱之為超類),而b類也為父類,如下所示,c類繼承了a,b類,但
Java保留了多繼承這種機制,並用了另一種表現形式來體現,叫做多實現。
class a
{
void show()
{
System.out.println("d");
}
}
class b
{
void show()
{
System.out.println("a");
}
}
class c extend a,b
{
System.out.println("f");
}
public class Demo
{
public static void main(String[] args)
{
c.p=new c();//建立物件
c.show();
}
}//此時的c類繼承了a,b類,但a,b類中具有相同的方法show(),此時的多繼承就出現了錯誤,因為物件不知道該呼叫哪個show函式,
5:如何使用一個繼承體系中的功能?
要想使用體系,先查閱體系父類的描述,因為父類定義的是該功能的共性功能。
通過了解共性功能,就可以知道該體系的基本功能。
那麼這個體系就可以基本使用了。
那麼在具體呼叫時,要建立最子類功能的物件:原因1:有可能父類建立不了物件,如抽象類,2:建立子類的物件可以使用更多的功能,可以是共有的也可以是特有的
簡單一句話說就是:查閱父類的功能,建立子類使用功能。