4

可能重复:
java中的 <TYPE> 是什么意思?

您好,我在调试时遇到了这个类,请有人给我指点它的含义。谢谢。

class Something<P>{
 private P someVariable;
}

//what does <P> mean here? 

谢谢。

4

5 回答 5

9

这是一个通用的。它允许您编写适用于不同类型的代码。

试试这个教程:

http://docs.oracle.com/javase/tutorial/java/generics/

于 2012-12-10T21:20:24.937 回答
3

这是一个类模板的例子(尽管它在运行时被删除)。通常是类而不是类

. 它允许您在编译时将类型注入到类中。

例如,如果你做了

new Something<String>();

那么 someVariable 将是 String 类型。

如果你打电话

new Something();

那么我相信 someVariable 将是 Object 类型,因为它没有推断的类型信息。通常你的 IDE 会给你一个警告。

这里也有描述。

于 2012-12-10T21:19:44.213 回答
3

这意味着它是一个通用类。通过更改代码创建泛型类型声明

  "public class Box" to "public class Box<T>"

有关更多信息,您可以查看此参考: http ://docs.oracle.com/javase/tutorial/java/generics/types.html

于 2012-12-10T21:21:19.087 回答
2

P是用于泛型的类型。

通常它是T, 或TEntity, 用于类型或实体类型。

只需ArrayList<string>将类型视为string.

于 2012-12-10T21:22:13.530 回答
2
这是一个通用类定义。

<P> 是在编译时被替换的对象的占位符。
于 2012-12-10T21:23:09.400 回答