方法的重載
上面所使用的max方法僅適用於int型資料。但如果你想得到兩個浮點數型資料的最大值呢?
解決方法是創建另一個有相同名字但參數不同的方法,如下面程式碼所示:
public static double max(double num1, double num2) { if (num1 > num2) return num1; else return num2; }
如果你呼叫max方法時傳遞的是int型參數,則int型參數的max方法就會被呼叫;
如果傳遞的事double型參數,則double類型的max方法體會被調用,這叫做方法重載;
就是說一個類別的兩個方法擁有相同的名字,但是有不同的參數列表。
Java編譯器根據方法簽章判斷哪個方法應該被呼叫。
方法重載可以讓程式更清晰易讀。執行密切相關任務的方法應該使用相同的名字。
重載的方法必須擁有不同的參數清單。你不能僅僅依據修飾符或返回類型的不同來重載方法。
變數作用域
變數的範圍是程式中該變數可以被引用的部分。
方法內定義的變數稱為局部變數。
局部變數的作用範圍從宣告開始,直到包含它的區塊結束。
局部變數必須聲明才可以使用。
方法的參數範圍涵蓋整個方法。參數實際上是一個局部變數。
for迴圈的初始化部分宣告的變量,其作用範圍在整個迴圈。
但循環體內聲明的變數其適用範圍是從它聲明到循環體結束。它包含如下所示的變量聲明:
你可以在一個方法裡,不同的非嵌套塊中多次聲明一個具有相同的名稱局部變量,但你不能在嵌套塊內兩次聲明局部變數。
更多Java的方法重載與變數作用域簡介相關文章請關注PHP中文網!