ホームページ  >  記事  >  Java ジェネリックではどのようにしてこれが可能になるのでしょうか?

Java ジェネリックではどのようにしてこれが可能になるのでしょうか?

王林
王林転載
2024-02-08 23:20:09953ブラウズ

php エディタ Apple が答えます: Java ジェネリックでは、「Java ジェネリックでどのようにこれが可能ですか?」という質問が実際に可能です。 Java ジェネリックでは、「?」を使用して任意の型を表すなど、未定義の型を表すワイルドカードの使用が許可されているためです。ジェネリック メソッドまたはジェネリック クラスを定義する場合、ワイルドカードを使用してパラメータの型や戻り値の型を制限し、特定の機能を実現できます。場合によっては、型の消去による制限が存在する可能性がありますが、合理的な設計と使用を行うことで、Java ジェネリックスで一見不可能と思われる多くの操作を実現できます。

質問の内容

Java ジェネリックに関して、私にとって非常に直感に反することに気づきました。この方法を見てみましょう:

リーリー

次の呼び出しを行うことができます:

リーリー

型 T が導出されたら、2 つの文字列や 2 つの整数と同じように、一貫性がなければならないと思います。 メソッドに次の行がある場合、これはあまり意味がありません:

リーリー

Tとは何ですか?

誰か説明してもらえますか?

解決策

主な結果は、IntegerString の両方が Serialized から実装されることです。

つまり、コードは次のようになります:

リーリー

ブロー コードに変更された場合は、Integer または Number サブクラスでのみ有効です。

リーリー

これはより良い例です:

リーリー

以上がJava ジェネリックではどのようにしてこれが可能になるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。