Java繼承是什么?
在Java中,繼承是面向?qū)ο缶幊讨械囊粋€(gè)重要概念,它允許一個(gè)類(稱為子類或派生類)繼承另一個(gè)類(稱為父類或基類)的屬性和方法。通過(guò)繼承,子類可以重用父類的代碼,并可以在此基礎(chǔ)上添加新的屬性和方法,從而實(shí)現(xiàn)代碼的復(fù)用和擴(kuò)展。下面我將詳細(xì)回答你關(guān)于Java繼承的問(wèn)題。
聲明繼承關(guān)系: 在Java中,使用關(guān)鍵字
extends
聲明一個(gè)類繼承另一個(gè)類。例如,下面的代碼展示了一個(gè)子類ChildClass
繼承父類ParentClass
的語(yǔ)法:
class ParentClass {
? ? // 父類的屬性和方法
}
class ChildClass extends ParentClass {
? ? // 子類的屬性和方法
}
訪問(wèn)父類的成員: 子類可以訪問(wèn)父類的非私有成員(屬性和方法),包括公有(
public
)、受保護(hù)(protected
)和默認(rèn)(沒(méi)有修飾符)訪問(wèn)級(jí)別的成員。子類可以使用super
關(guān)鍵字來(lái)引用父類的成員。例如,下面的代碼展示了子類如何訪問(wèn)父類的方法:
class ParentClass {
? ? public void parentMethod() {
? ? ? ? System.out.println("這是父類的方法");
? ? }
}
class ChildClass extends ParentClass {
? ? public void childMethod() {
? ? ? ? // 調(diào)用父類的方法
? ? ? ? super.parentMethod();
? ? ? ? System.out.println("這是子類的方法");
? ? }
}
方法重寫: 子類可以重寫(覆蓋)父類的方法,以實(shí)現(xiàn)自己的特定行為。方法重寫要求子類方法的名稱、參數(shù)列表和返回類型與父類方法相同。使用
@Override
注解可以提醒編譯器驗(yàn)證該方法是否正確地重寫了父類的方法。例如,下面的代碼展示了子類如何重寫父類的方法:
class ParentClass {
? ? public void parentMethod() {
? ? ? ? System.out.println("這是父類的方法");
? ? }
}
class ChildClass extends ParentClass {
? ? @Override
? ? public void parentMethod() {
? ? ? ? System.out.println("這是子類重寫的父類方法");
? ? }
}