Java具有三大特性:封裝、繼承、多型。此篇介紹「繼承」,在創建一個新的類別時,可以使用已經存在的類別之屬性及方法,此特性就稱為「繼承」。
被繼承的類別稱為「父類別」,繼承的類別則為「子類別」,子類別可以繼承父類別的所有屬性及方法,而子類別還能新增自己的屬性及方法,此行為稱為「延伸」extends。繼承的特性:
每個類別都可以追溯到最上層(直接或間接),擁有一個共同的父類別「Object」,「Object」又被稱為萬物之父; Java所有的類別都繼承自java.lang.Object類別。
Java只支援『單向繼承』,也就是說一個子類別只可以有一個父類別,不過一個父類別可以被多個子類別繼承
class Animal { //父類別
String name;
public Animal(String name){
this.name = name;
}
public void sound(){
System.out.println("Some generic sound");
}
}
class Dog extends Animal{ //子類別
public Dog(String name){
super(name);
}
public void bark(){
System.out.println("Woof!");
}
}
補充:當沒有呼叫建構子時,Java預設第一行加上super();呼叫