繼承
- 繼承的本質是對某一批類的抽象,進而實作對現實世界更好的模組化。
- extends的意思是“擴充”,子類是父類的擴充
- java中類隻有單繼承,沒有多繼承(一個子類隻有一個父類,但是一個父類可以有多個子類)
- 繼承是類和類之間的一種關系,除此之外,類和類之間還有依賴,組合,聚合等。
- 繼承關系的兩個類,一個為子類(派生類),一個為父類(基類),子類繼承父類,使用關鍵字extends來表示。
- 子類和父類之間,從意義上來講應該具有“is a”的關系。
- object類
- super
- 方法重寫
代碼舉例:
分别建立三個類 :Person類 、Student類、Test(類)主類
在Person類中建立一個say的方法:
public class Person {
public void say(){
System.out.println("說話");
}
}
Student類繼承Person類
編譯代碼如下:
//Student 類 繼承Person類,繼承了裡面的say方法
public class Student extends Person {
}
在Test類中調用say方法
public class Test {
public static void main(String[] args) {
Student x = new Student();
//由于student類繼承了Person類,可以通過調用student類,使用say方法。
//子類繼承了父類,就會擁有父類的全部方法!
x.say();
}
}
運作截圖如下:
修飾符
public 公有的
protected 受保護的
default 預設的
private 私有的(不可以被繼承)
1、公有繼承(public),公有繼承的特點是基類的公有成員和保護成員作為派生類的成員時,它們都保持原有的狀态,而基類的私有成員仍然是私有的。
2、保護繼承(protected),保護繼承的特點是基類的所有公有成員和保護成員都成為派生類的保護成員,并且隻能被它的派生類成員函數或友元通路,基類的私有成員仍然是私有的。
3、私有繼承(private),私有繼承的特點是基類的公有成員和保護成員都作為派生類的私有成員,并且不能被這個派生類的子類所通路。
在Java中 所有的類 ,都預設間接或直接繼承object類