Java重載是一種可以讓我們在同一個類中定義多個同名方法的方法,這些方法的參數(shù)列表不同。方法的返回值可以相同也可以不同。也就是說,通過重載,可以讓同名的方法可以處理不同的數(shù)據(jù)類型或參數(shù)數(shù)量。
構(gòu)造方法是一種被用于初始化對象的特殊方法。Java中的構(gòu)造方法名必須與類名相同,且不包含任何返回值類型。每次創(chuàng)建新的對象時,都會自動調(diào)用構(gòu)造方法來為對象分配內(nèi)存并進行初始化。如果沒有提供任何構(gòu)造方法,則Java將會提供默認的構(gòu)造方法。
class Person {
private String name;
// 無參構(gòu)造方法
public Person() {
System.out.println("使用默認構(gòu)造方法創(chuàng)建了一個Person對象");
}
// 帶參數(shù)的構(gòu)造方法
public Person(String name) {
this.name = name;
System.out.println("使用帶參數(shù)構(gòu)造方法創(chuàng)建了一個Person對象,名字為:" + name);
}
// 重載的方法
public void sayHello() {
System.out.println("Hello!");
}
public void sayHello(String name) {
System.out.println("Hello, " + name + "!");
}
public void sayHello(String name, int count) {
for(int i = 0; i < count; i++) {
System.out.println("Hello, " + name + "!");
}
}
}
public class Main {
public static void main(String[] args) {
Person p1 = new Person();
Person p2 = new Person("Tom");
p1.sayHello();
p1.sayHello("Jerry");
p1.sayHello("Jack", 3);
}
}
在上面的代碼中,我們定義了一個Person類,其中有無參構(gòu)造方法和帶參數(shù)構(gòu)造方法。同時,我們還通過重載的方式定義了多個同名的sayHello方法,以處理不同的數(shù)據(jù)類型或參數(shù)數(shù)量。
在主函數(shù)中,我們首先使用無參構(gòu)造方法創(chuàng)建了一個Person對象,然后使用帶參數(shù)構(gòu)造方法創(chuàng)建了另一個Person對象。接著,我們分別使用重載的sayHello方法,向控制臺輸出不同的內(nèi)容。