在Java中,一個(gè)類(lèi)可以派生出另一個(gè)類(lèi),被派生的類(lèi)稱(chēng)為子類(lèi),派生出子類(lèi)的類(lèi)稱(chēng)為父類(lèi)。父類(lèi)中的屬性和方法可以被子類(lèi)繼承和重用。使用繼承可以讓代碼更加簡(jiǎn)潔和易于維護(hù)。子類(lèi)可以擴(kuò)展和修改父類(lèi)的功能,也可以添加自己的特有屬性和方法。

繼承的語(yǔ)法
在Java中,使用關(guān)鍵字extends定義一個(gè)類(lèi)的繼承關(guān)系。子類(lèi)中可以訪(fǎng)問(wèn)父類(lèi)中被繼承的非私有成員變量和方法,而父類(lèi)不能訪(fǎng)問(wèn)子類(lèi)的成員變量和方法。子類(lèi)可以重寫(xiě)父類(lèi)的方法,也可以使用super關(guān)鍵字在子類(lèi)中調(diào)用父類(lèi)的方法。
public class ParentClass { public int publicVar = 1; protected int protectedVar = 2; private int privateVar = 3; public void publicMethod() { System.out.println("This is a public method from parent class."); } protected void protectedMethod() { System.out.println("This is a protected method from parent class."); } private void privateMethod() { System.out.println("This is a private method from parent class."); }}public class ChildClass extends ParentClass { public void childMethod() { System.out.println("This is a method in child class."); System.out.println(publicVar); System.out.println(protectedVar); publicMethod(); protectedMethod(); //privateVar和privateMethod不可訪(fǎng)問(wèn) } public void publicMethod() { System.out.println("This is a public method from child class."); super.publicMethod(); }}Java繼承中的多態(tài)
多態(tài)是指同一種行為在不同的情境下具有不同的表現(xiàn)形式。在Java中,多態(tài)是通過(guò)方法的重寫(xiě)和接口實(shí)現(xiàn)來(lái)實(shí)現(xiàn)的。一個(gè)子類(lèi)對(duì)象可以被當(dāng)做父類(lèi)對(duì)象使用,同時(shí)根據(jù)實(shí)際類(lèi)型的不同,調(diào)用同一個(gè)方法時(shí)會(huì)有不同的表現(xiàn)形式。
public class Animal { public void makeSound() { System.out.println("This animal makes sound."); }}public class Dog extends Animal { public void makeSound() { System.out.println("The dog barks."); }}public class Cat extends Animal { public void makeSound() { System.out.println("The cat meows."); }}public class Main { public static void main(String[] args) { Animal animal1 = new Animal(); Animal animal2 = new Dog(); Animal animal3 = new Cat(); animal1.makeSound(); animal2.makeSound(); animal3.makeSound(); }}在這個(gè)例子中,通過(guò)方法的重寫(xiě)實(shí)現(xiàn)了多態(tài)。animal2和animal3既是Animal類(lèi)型,也是Dog和Cat類(lèi)型,調(diào)用makeSound方法時(shí)表現(xiàn)形式不同。

京公網(wǎng)安備 11010802030320號(hào)