ワイルドFJ紙で型変数と型パラメータの違いは?

マシューS.:

セクション2と3の使用期間の最初の段落「の型パラメータ。」その後、セクションの最初の文3.1紹介用語「型変数。」それがであることを文脈を考慮すると、Googleでの情報の欠如私しかできない憶測「型の変数は、」特異的にワイルドカードを参照するために使用されていること。これは私がJavaでのワイルドカードの実装につながった、それは見つけることができることをかなり確信して、「画期的」紙だでここに。

アンドレアス:

この方法では、foo(int x)以下の用語が使用されます。

  • この方法は、1つの持っている仮パラメータをint xそれは多くの場合に短縮されるが、)パラメータの潜在的な混乱につながります、。intあるパラメータの型xパラメータ名

  • xあるパラメータ変数が多いに短縮されるものの、パラメータの潜在的な混乱につながるが、。

  • コールでは、foo(5)値が呼び出され、引数が多いと呼ばれているものの、パラメータ値に短縮、パラメータの潜在的な混乱につながります、。明確化が必要な場合は、それが呼び出され、実際のパラメータ

あなたが見ることができるように、単語の速記用パラメータが意味することができint xxまたは5、コンテキストに応じて。

ジェネリック型の場合、Foo<X extends Number>同様の命名が使用されます。

  • タイプ1はタイプパラメータextends Numberある結合タイプ、およびXあるタイプ識別子

  • Xある型変数を

  • 使用すると、Foo<Integer>Integer一部が呼び出された型引数type引数には、ワイルドカードすることができます。

メソッド混同しないでくださいparameter typeジェネリック医薬品とをtype parameter

あなたが見ることができるように、というあなたの結論「」型の変数は、「ワイルドカードを参照するために使用されては、具体的には、」間違っています。型変数は関係なく、型パラメータがバインドされているかどうかの、型パラメータの名前を指します。

それがないジェネリック型の定義では、ジェネリック型を使用することで指定されているので、型変数の「実際の」タイプ、すなわち型引数は、または、ワイルドカードであってもなくてもよいです。

ジェネリック型変数が唯一の方法方法に類似ジェネリック型の定義で参照される変数パラメータは唯一の方法の本体で参照されています。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=367495&siteId=1