ホームページ  >  記事  >  Java  >  JavaジェネリックスのTと?の違いは何ですか?

JavaジェネリックスのTと?の違いは何ですか?

王林
王林オリジナル
2020-05-16 09:58:426296ブラウズ

JavaジェネリックスのTと?の違いは何ですか?

1. T は未知の型を表し、クラスのメソッドまたはジェネリックスのパラメーターで使用されます

(ビデオ チュートリアルの推奨事項: java ビデオ )

public class ExampleA {
  public <T> void f(T x) {
        System.out.println(x.getClass().getName());
  }
  
  public static void main(String[] args) {
     ExampleA ea = new ExampleA();
     ea.f(" ");
     ea.f(10);
     ea.f(&#39;a&#39;);
     ea.f(ea);
  }
}

2. ? は、ジェネリック クラスの一般参照を意味します。これはプレースホルダーであり、データをコンテナに追加することはできません。

 
// 注意ArrayList中不能加<?>
List<?> list = new ArrayList();
list.add(123);// 错误

推奨チュートリアル: java 開発入門
#

以上がJavaジェネリックスのTと?の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。