問: 什么是方法的重載呢?
答: 如果同一個(gè)類中包含了兩個(gè)或兩個(gè)以上方法名相同、方法參數(shù)的個(gè)數(shù)、順序或類型不同的方法,則稱為方法的重載,也可稱該方法被重載了。如下所示 4 個(gè)方法名稱都為 show ,但方法的參數(shù)有所不同,因此都屬于方法的重載:

問: 如何區(qū)分調(diào)用的是哪個(gè)重載方法呢?
答: 當(dāng)調(diào)用被重載的方法時(shí), java 會(huì)根據(jù)參數(shù)的個(gè)數(shù)和類型來判斷應(yīng)該調(diào)用哪個(gè)重載方法,參數(shù)完全匹配的方法將被執(zhí)行。如:

運(yùn)行結(jié)果:

判斷方法重載的依據(jù):
1、 必須是在同一個(gè)類中
2、 方法名相同
3、 方法參數(shù)的個(gè)數(shù)、順序或類型不同
4、 與方法的修飾符或返回值沒有關(guān)系
應(yīng)用舉例:
public class HelloWorld { public static void main(String[] args) { // 創(chuàng)建對象 HelloWorld hello = new HelloWorld(); // 調(diào)用無參的方法 hello.PRint(); // 調(diào)用帶有一個(gè)字符串參數(shù)的方法 hello.print("nice to meet you!"); // 調(diào)用帶有一個(gè)整型參數(shù)的方法 hello.print(18); } public void print() { System.out.println("無參的print方法"); } public void print(String name) { System.out.println("帶有一個(gè)字符串參數(shù)的print方法,參數(shù)值為:" + name); } public void print(int age) { System.out.println("帶有一個(gè)整型參數(shù)的print方法,參數(shù)值為:" + age); }}新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注