0

这是我为 Egit 找到的代码

我对PlotCommitList<L extends PlotLane>.

  1. 用什么术语来形容它?
  2. 它对编译器意味着什么?

public class PlotCommitList<L extends PlotLane> extends RevCommitList<PlotCommit<L>> {

4

1 回答 1

3

<> 运算符用于指定通用模板中的类。

图像一个通用的“列表”。在 Java 1.4 之前,“列表”只能包含泛型Object。如果您想确保仅将Strings 保留在列表中,则必须使用大量强制转换和辅助方法,这使得代码几乎不可读。

Java 5 引入了泛型,这解决了这个问题——您可以创建一个模板类“列表”,并将用作参数或返回值的类参数化。

此外,您可以使用<L extends ...><L super ...>来限制模板使用的类的范围,将多个类作为参数<class1,class2>并随意组合<class1,class2<class3>>

http://www.javacodegeeks.com/2011/04/java-generics-quick-tutorial.html有一个很好的教程

于 2012-11-05T11:09:07.873 回答