- 繼承的實(shí)現(xiàn):
繼承是用來(lái)擴(kuò)展父類的功能,用extend關(guān)鍵字來(lái)完成繼承
格式:class 子類 extends 父類 {}
限制:Java中只能允許單繼承,并且子類不能直接訪問(wèn)父類的私有成員
子類對(duì)象實(shí)例化之前,必須先調(diào)用父類中的構(gòu)造方法,之后調(diào)用子類構(gòu)造方法 - 方法的重寫
在繼承中,重寫就是子類定義了和父類同名的方法,方法名稱相同,返回值類型相同,參數(shù)也相同。
限制:被子類重寫的方法不能擁有比父類方法更加嚴(yán)格的訪問(wèn)權(quán)限。
訪問(wèn)權(quán)限: private < default < public - super 關(guān)鍵字:強(qiáng)行調(diào)用父類的方法的執(zhí)行
class A {
public void tell(){
System.out.println("我是tell方法");
}
}
class B extends A {
public void tell(){
super.tell();
System.out.println("我重寫了tell方法");
}
}
public class Extends01 {
public static void main(String[] args) {
B b = new B();
b.tell();
}
}
- 重寫與重載的對(duì)比
重載 Overloading *** 重寫 Overriding
定義: 方法名稱相同,參數(shù)的類型或者個(gè)數(shù)不同 ***方法類型,參數(shù)類型,返回值類型全部相同
權(quán)限: 沒有權(quán)限要求 *** 被重寫的方法不能有比父類更嚴(yán)格的權(quán)限
使用范圍: 發(fā)生在一個(gè)類中 *** 發(fā)生在繼承中 - final關(guān)鍵字:在java中被稱為完結(jié)器,表示最終的意思
final能聲明類,方法,屬性:
使用final聲明的類不能被繼承
使用final聲明的方法不能被重寫
使用final聲明的變量變成常量,常量是不能被修改的