Java の複数の戻り値: 誤解が明らかに
Java プログラミングの領域では、独特のメソッド シグネチャが発生し、開発者が困惑することがあります。 :
公開<E は Foo を拡張します>リスト<E> getResult(String s);
ここで、Foo はカスタム クラスです。メソッド宣言には、List と E という 2 つの戻り値の型があるように見えます。しかし、これは本当に事実なのでしょうか?
ジェネリック メソッド: 謎を解く
最初の印象に反して、メソッドは戻り値の型を 1 つだけ持ちます。むしろ、菱形表記「<>」で示されているように、ジェネリック型メカニズムが採用されています。
メソッド署名の分解:
例として、次の呼び出しを考えてみましょう。
List<String> result = getResult("Input String");
ここで、String は Foo から継承しているため、メソッドは String オブジェクトのリストを返します。
結論:
Java メソッドの戻り値の型の二重性は、次のような現象によって生み出された単なる幻想です。ジェネリックタイプ。ジェネリックは、一貫した戻り値の型 (この特定のインスタンスの List) を維持しながら、メソッドがさまざまなデータ型を操作できるようにすることで柔軟性を提供します。この理解により、このメソッドの本質とその多用途な機能が明らかになります。
以上がJava では複数の戻り値の型が許可されていますか: ジェネリック メソッドを詳しく見てみるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。