您好,登錄后才能下訂單哦!
如何使用Java方法重載?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
1、方法重載概念
方法重載指同一個類中定義的多個方法之間的關系,滿足下列條件的多個方法相互構成重載。多個方法在同一個類中,多個方法具有相同的方法名,多個方法的參數不相同,類型不同或者數量不同。
(1)注意:
重載僅對應方法的定義,與方法的調用無關,調用方式參照標準格式。重載僅針對同一個類中方法的名稱與參數進行識別,與返回值無關,換句話說不能通過返回值來判定兩個方法是否相互構成重載。
(2)正確范例:
```java
public class MethodDemo {
public static void fn(int a) {
//方法體
}
public static int fn(double a) {
//方法體
}
}
public class MethodDemo {
public static float fn(int a) {
//方法體
}
public static int fn(int a , int b) {
//方法體
}
}
```
(3)錯誤范例:
```java
public class MethodDemo {
public static void fn(int a) {
//方法體
}
public static int fn(int a) { /*錯誤原因:重載與返回值無關*/
//方法體
}
}
public class MethodDemo01 {
public static void fn(int a) {
//方法體
}
}
public class MethodDemo02 {
public static int fn(double a) { /*錯誤原因:這是兩個類的兩個fn方法*/
//方法體
}
}
```
2、方法重載練習
(1)需求:使用方法重載的思想,設計比較兩個整數是否相同的方法,兼容全整數類型(byte,short,int,long)
(2)解決思路:
①定義比較兩個數字的是否相同的方法compare()方法,參數選擇兩個int型參數
②定義對應的重載方法,變更對應的參數類型,參數變更為兩個long型參數
③定義所有的重載方法,兩個byte類型與兩個short類型參數
④完成方法的調用,測試運行結果
(3)代碼實現:
```java
public class MethodTest {
public static void main(String[] args) {
//調用方法
System.out.println(compare(10, 20));
System.out.println(compare((byte) 10, (byte) 20));
System.out.println(compare((short) 10, (short) 20));
System.out.println(compare(10L, 20L));
}
//int
public static boolean compare(int a, int b) {
System.out.println("int");
return a == b;
}
//byte
public static boolean compare(byte a, byte b) {
System.out.println("byte");
return a == b;
}
//short
public static boolean compare(short a, short b) {
System.out.println("short");
return a == b;
}
//long
public static boolean compare(long a, long b) {
System.out.println("long");
return a == b;
}
}
```
關于如何使用Java方法重載問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。