什么是Java中的T或K.

时间:2015-07-14 17:59:25

标签: java generics

我知道当我需要处理集合时我应该使用泛型,但是我有很多时间看过用泛型定义的类。我无法理解为什么要用泛型定义我的课程

public class MyClass<T> {
....
}

我试图在所有地方看到,但是每个人都会对集合进行强制转换,因此只有当我计划将该类与集合或带有泛型的类一起使用时,才会定义泛型,仅限POJO。具有泛型的辅助类或util类是没有用的。

2 个答案:

答案 0 :(得分:3)

在Collection之外使用泛型的一个简单示例是Comparable接口。

https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html

答案 1 :(得分:0)

泛型允许您使用任何类型的对象,而不是仅指定类可以处理的一种类型的对象。它使你的课更通用。

在此处阅读更多内容:https://docs.oracle.com/javase/tutorial/extra/generics/

例如,您可以创建一个自定义LinkedList实现,该实现可以创建LinkedLists来存储任何类型的对象(或使用包装类的基元)。这看起来像这样:

 public class MultiPurposeList<T> {
        //class definition
 }