これは私がEgitのために見つけたコードです
の使用法は初めてですPlotCommitList<L extends PlotLane>。
- それに使用される用語は何ですか?
- それはコンパイラにとって何を意味するか、または意味しますか?
public class PlotCommitList<L extends PlotLane> extends RevCommitList<PlotCommit<L>> {
<>演算子は、汎用テンプレートのクラスを指定するために使用されます。
一般的な「リスト」をイメージします。1.4までのJavaでは、「リスト」にはジェネリックObjectsのみを含めることができました。リストにsだけを残したい場合はString、多くのキャストメソッドとヘルパーメソッドを使用する必要があり、コードがほとんど読めなくなりました。
Java 5では、問題を解決するジェネリックスが導入されました。テンプレートクラス「listof」を作成し、パラメータまたは戻り値として使用されるクラスをパラメータ化できます。
<L extends ...>さらに、とを使用して<L super ...>、テンプレートが機能するクラスの範囲を制限したり、パラメーターとして複数のクラスを使用<class1,class2>したり、自由に組み合わせたりすることができ<class1,class2<class3>>ます。
http://www.javacodegeeks.com/2011/04/java-generics-quick-tutorial.htmlに非常に優れたチュートリアルがあります。