在Java中,泛型是一种允许你在编译时限制和指定类或方法参数的类型的方式。泛型的主要优点是提供了类型安全和避免类型转换的错误。以下是如何在Java类和方法中使用泛型的示例:
- 创建一个泛型类:
public class GenericBox{ private T item; public void setItem(T item) { this.item = item; } public T getItem() { return item; } }
在这个例子中,我们创建了一个名为GenericBox
的泛型类,它接受一个类型参数T
。这个类有一个私有成员变量item
,其类型为T
。我们还提供了setItem
和getItem
方法来设置和获取item
的值。
- 创建一个泛型方法:
public class GenericMethods { public static> T findMax(T a, T b) { return a.compareTo(b) > 0 ? a : b; } public static void main(String[] args) { Integer max = findMax(3, 5); System.out.println("Max value: " + max); // 输出 "Max value: 5" } }
在这个例子中,我们创建了一个名为findMax
的泛型方法,它接受两个类型参数T
,这两个类型参数都必须实现Comparable
接口。这个方法返回两个参数中的最大值。
注意,在调用泛型方法时,不需要指定具体的类型参数,因为编译器可以根据实际参数类型自动推断出来。在上面的例子中,我们调用了findMax
方法并传入了两个Integer
类型的参数,编译器会自动推断出T
的类型为Integer
。