什么是方法重載?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
方法重載是指在一個類中定義多個同名的方法,但要求每個方法具有不同的參數的類型或參數的個數。方法的重載,既可以發生在普通方法上,也可以發生在構造方法上。方法的重載,既可以發生在同類中,也可以發生在父子類中。
方法重載就是方法名稱重復,加載參數不同。
在一個Java類中,定義多個同名的方法,如果方法名相同,方法參數不同,包括參數的類型和個數都不同,叫做方法的重載。調用重載方法時,Java 編譯器通過檢查調用的方法的參數類型和個數選擇一個恰當的方法。方法重載常用于創建完成一組任務相似但參數的類型或參數的個數或參數的順序不同的方法。
方法的重載,既可以發生在普通方法上,也可以發生在構造方法上。方法的重載,既可以發生在同類中,也可以發生在父子類中。
Java方法的重載:返回類型、修飾符可以相同,也可不同。要求同名的方法必須有不同的參數表,僅有返回類型不同是不足以區分兩個重載的方法。
具體規范
1、方法名一定要相同。
2、方法的參數表必須不同,包括參數的類型或個數,以此區分不同的方法體。
1)、如果參數個數不同,就不管它的參數類型了!
2)、如果參數個數相同,那么參數的類型必須不同。
3、方法的返回類型、修飾符可以相同,也可不同。
例子:
題目要求:比較兩數據是否相等。
參數類型分別為兩個byte類型、兩個short類型、兩個int類型、兩個long類型。
并在main方法中進行測試
public class CaiNiao{ public static void main(String[] args){ byte a = 10; byte b = 20; System.out.println(isSame(a,b)); System.out.println((isSame(short)20,(short)20)); System.out.println(isSame(11,22)); System.out.println(isSame(10L,10L)); } public static boolean isSame(byte a,byte b){ System.out.println("兩byte參數的方法執行!"); boolean same ; if(a==b){ same = true; }else{ same = false; } return same; } public static boolean isSame(short a,short b){ System.out.println("兩short參數的方法執行!"); boolean same = a == b ?true:false; return same; } public static boolean isSame(int a,int b){ System.out.println("兩int參數的方法執行!"); return a == b:; } public static boolean isSame(long a,long b){ System.out.println("兩long參數的方法執行!"); if (a==b){ return true; } else{ return false; } } }
注意,Java的方法重載要求同名的方法必須有不同的參數表,僅有返回類型不同是不足以區分兩個重載的方法。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。