私の問題は使用法ではなく用語に関連しています。単純に言えば、タイプ、ワイルドカードは誰ですか? -Javaの汎用型、型、ワイルドカードの違い
List<T>
List<Integer>
List<? extends Number>
あなた自身の例も追加できます。私はT
タイプ、?
ワイルドカードだろうと理解していますが、何が一般的で、何を私たちはInteger
と呼んでいますか?情報の
私の問題は使用法ではなく用語に関連しています。単純に言えば、タイプ、ワイルドカードは誰ですか? -Javaの汎用型、型、ワイルドカードの違い
List<T>
List<Integer>
List<? extends Number>
あなた自身の例も追加できます。私はT
タイプ、?
ワイルドカードだろうと理解していますが、何が一般的で、何を私たちはInteger
と呼んでいますか?情報の
良いソースはhereのように、Oracleのチュートリアルのようになります。
public interface List <E> {
void add(E x);
Iterator<E> iterator();
}
これらは、interfacesリストとイテレータの仮型パラメータの宣言です。
しかし、同様に、もちろん、究極の答えは、JLSで見つけることができます:
:それは、1つまたは複数の型変数または下にさらにを宣言している場合、クラスはジェネリックである
メソッドが1つ以上の型変数を宣言する場合、メソッドは汎用です。
In ther言葉:用語を実際に理解するには、JLSを読んで、セクション8.1.2と8.4.4を読んでください。
これ以外にも、人が読めるが、まだ詳細な情報はFAQのAngelika Langerです。
ジェネリックスは、たとえば制約を作成する方法です。 単純なリストは、整数のリストを意味します。
上限のあるワイルドカードを宣言するには、ワイルドカード文字( '?')を使用し、次にキーワードの後にその上限を続けて使用します。
3つはすべて総称であり、Tはどのタイプのものであってもかまいません。ここではリストがいくつかのタイプの番号でなければならないことを表しています。 – jos
スーパークイック受け入れてくれてありがとう! – GhostCat