Java 8 の Optional 型: Getter メソッドに適した選択肢?
Java 8 の Optional 型の導入により、開発者間で次の点に関する議論が巻き起こりました。 getter メソッドの戻り値の型としての適合性。
Q: Optional
A: Java 8 の実装チームは、Optional 型を導入する特別な意図を持っていました。これは、一般的な「Maybe」型として機能するように設計されたのではなく、「結果なし」の明確な指示が必要であり、null を使用するとエラーが発生する可能性が高いライブラリ メソッドの戻り値の限定的なメカニズムとして設計されました。
たとえば、結果の配列またはリストを返すメソッドで Optional を使用するよりも、空の配列またはリストを返すことをお勧めします。同様に、フィールドまたはメソッドのパラメーターとして Optional を使用しないことが一般的に推奨されます。
過剰使用に関する懸念:
ゲッター メソッドの戻り値の型としての Optional の使用は、チームは過剰使用の一例です。 Optional は、このようなシナリオで従来の戻り値の型を置き換えることを目的としたものではありません。
ベスト プラクティス:
Optional には本質的に問題はありませんが、排他的に使用しないことが重要です。 Optional が特定のゲッター メソッドに適切な選択肢であると判断した場合は、Optional.get を直接呼び出すのではなく、orElse や ifPresent などの安全なメソッドを利用することで注意してください。さらに、get メソッドの名前を適切に変更して、null を返す可能性がある性質を強調することを検討してください。
以上がGetter メソッドは Java 8 オプションを返す必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。