< T>是通用的,通常可以读作“T型”.它取决于<>左侧的类型它究竟意味着什么.
我不知道Pool或PoolFactory是什么,但你也提到了ArrayList< T>这是一个标准的Java类,所以我会谈到它.
通常,你不会看到“T”,你会看到另一种类型.所以如果你看到ArrayList< Integer>例如,这意味着“一个整数的ArrayList”.例如,许多类使用泛型来约束容器中元素的类型.另一个例子是HashMap< String,Integer>,这意味着“带有字符串键和整数值的映射”.
您的Pool示例有点不同,因为您正在定义一个类.因此,在这种情况下,您正在创建一个其他人可以用特定类型代替T进行实例化的类.例如,我可以创建一个类型为Pool< String>的对象.使用您的类定义.这意味着两件事:
>我的游泳池< String>会有一个接口PoolFactory< String>使用返回字符串的createObject方法.
>在内部,Pool< String>将包含字符串的ArrayList.
这是个好消息,因为在另一个时间,我可以来创建一个Pool< Integer>它会使用相同的代码,但只要你在源代码中看到T,就会有Integer.