iT邦幫忙

2025 iThome 鐵人賽

DAY 4
0
自我挑戰組

Java系列 第 15

Java 繼承與多型(下)

  • 分享至 

  • xImage
  •  

1 年前 ‧ 240 瀏覽
0
多型的核心在於,Java可以根據物件的具體類型來調用正確的覆蓋方法,這允許用一個接口或一個父類來處理多種類型的物件。多型的核心在於,Java可以根據物件的具體類型來調用正確的覆蓋方法,這允許用一個接口或一個父類來處理多種類型的物件。
eg. class Animal {
public void makeSound() {
System.out.println("Animal makes a sound");
}
}
class Dog extends Animal {
public void makeSound() {
System.out.println("Dog barks");
}
}

class Cat extends Animal {
public void makeSound() {
System.out.println("Cat meows");
}
}

public class Main {
public static void main(String[] args) {
// 使用多型
Animal myAnimal = new Animal(); // Animal 物件
Animal myDog = new Dog(); // Dog 物件,作為 Animal 型別
Animal myCat = new Cat(); // Cat 物件,作為 Animal 型別

myAnimal.makeSound(); // 輸出:Animal makes a sound
myDog.make.Sound(); //輸出:Dog barks
myCat.makeSound(); / 輸出:Cat meows
}
}
我們可以看到Animal是一個父類,而Dog和Cat都是繼承自Animal的子類。Dog和Cat覆蓋了父類的 makeSound()方法,並在不同情況下顯示不同的行為。

多型的特點:
(1)父類型變數可以指向子類型物件:Animal類型的變數可以指向Dog或Cat物件,這就是所謂的向上轉型。
(2)方法動態綁定:Java在運行時會根據物件的實際類型來調用正確的覆蓋方法,而不是根據變數的靜態類型。
使用多型的好處:
(1)靈活性:可以通過父類或接口來處理多種不同的物件,這使得程式更加靈活和可擴展。
(2)代碼簡化:通過多型,可以用統一的方式處理不同的子類,避免重複編寫相同的代碼。
(3)動態方法調用:在運行時,根據物件的實際類型動態決定調用哪個方法,這是多型最核心的能力。


上一篇
Java 繼承與多型(上)
下一篇
Java String 類的基本操作(比較、串接、切割)
系列文
Java19
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言