您好,登錄后才能下訂單哦!
在Java中,泛型類允許我們在類定義時指定一個或多個類型參數。這些類型參數可以在類的方法中使用,從而實現代碼的重用和類型安全。泛型方法重載是指在同一個類中定義多個泛型方法,它們具有相同的方法名,但參數類型不同。
下面是一個簡單的泛型類示例,其中包含了泛型方法重載:
public class GenericBox<T> {
private T content;
public void setContent(T content) {
this.content = content;
}
public T getContent() {
return content;
}
// 泛型方法重載:相同的函數名,但參數類型不同
public void printContent() {
System.out.println("Content: " + content);
}
public void printContent(boolean showType) {
if (showType) {
System.out.println("Content: " + content + " (Type: " + content.getClass().getSimpleName() + ")");
} else {
System.out.println("Content: " + content);
}
}
}
在這個例子中,我們定義了一個名為GenericBox
的泛型類,它有一個類型參數T
。類中有兩個泛型方法重載:printContent()
和printContent(boolean showType)
。這兩個方法的功能相似,但后者可以根據showType
參數的值來決定是否顯示內容類型。
使用這個泛型類的示例:
public class Main {
public static void main(String[] args) {
GenericBox<Integer> intBox = new GenericBox<>();
intBox.setContent(42);
intBox.printContent(); // 輸出:Content: 42
intBox.printContent(true); // 輸出:Content: 42 (Type: Integer)
GenericBox<String> strBox = new GenericBox<>();
strBox.setContent("Hello, world!");
strBox.printContent(); // 輸出:Content: Hello, world!
strBox.printContent(true); // 輸出:Content: Hello, world! (Type: String)
}
}
在這個示例中,我們創建了兩個GenericBox
對象,一個用于存儲Integer
類型的值,另一個用于存儲String
類型的值。我們可以看到,泛型方法重載使得我們可以使用相同的方法名來處理不同類型的值。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。