Java 中的重載和重寫概念是面向?qū)ο缶幊讨械闹匾R點。它們?yōu)槲覀兊拇a提供了更好的靈活性和可讀性,讓我們能夠更高效地進行編程。讓我們來逐一了解它們的概念和使用。
重載是指在同一個類中定義多個同名方法,但方法的參數(shù)列表不同。Java 可以根據(jù)傳入?yún)?shù)的不同,自動選擇匹配的方法進行調(diào)用。例如:
public void print(int i) {
System.out.println("整數(shù)為:" + i);
}
public void print(double d) {
System.out.println("浮點數(shù)為:" + d);
}
在這個例子中,我們定義了兩個名為 print 的方法,分別接受一個整數(shù)和一個浮點數(shù)類型的參數(shù)。當我們傳入整數(shù)時,會調(diào)用第一個方法,傳入浮點數(shù)時則會調(diào)用第二個方法。
重寫是指在子類中定義與父類中同名同參數(shù)的方法,但實現(xiàn)內(nèi)容不同。在這種情況下,當我們使用子類對象調(diào)用該方法時,會優(yōu)先調(diào)用子類中的方法。例如:
class Animal {
public void move() {
System.out.println("動物可以移動");
}
}
class Dog extends Animal {
public void move() {
System.out.println("狗可以跑和走");
}
}
在這個例子中,我們定義了一個 Animal 類和一個 Dog 類,其中 Dog 類繼承自 Animal 類。在 Animal 類中定義了一個 move 方法,而在 Dog 類中我們重寫了 move 方法,使其輸出了不同的信息。當我們使用 Dog 對象調(diào)用 move 方法時,會輸出“狗可以跑和走”。
總結來說,重載讓我們可以定義多個同名方法,方便了我們的程序設計。而重寫讓我們可以使用繼承的特性,對父類中的方法進行修改,實現(xiàn)更具體、更復雜的功能。