<T>是泛型,通常可以理解为“
T型”。它取决于
<>左侧的实际含义。
我不知道什么是
Pool或者
PoolFactory是,不过你还别说
ArrayList<T>,这是一个标准的Java类,所以我会跟那个。
通常,你不会在其中看到“ T”,而会看到另一种类型。因此
ArrayList<Integer>,例如,如果看到,则表示
“ An ArrayListof Integers”。例如,许多类都使用泛型来约束容器中元素的类型。另一个示例是
HashMap<String, Integer>,表示“具有
String键和
Integer值的映射”。
你的Pool示例有点不同,因为你正在定义一个类。因此,在这种情况下,你正在创建一个可以由其他人实例化的类,以代替T。例如,我可以
Pool<String>使用你的类定义来创建类型的对象。那将意味着两件事:
- 我
Pool<String>
的接口将PoolFactory<String>
带有createObject
返回Strings
的方法。 - 在内部,
Pool<String>
包含ArrayList
字符串。
这是个好消息,因为在另一时间,我可以创建一个
Pool<Integer>将使用相同代码的代码,但是Integer无论你T在源代码中看到的是什么。



