ラベル record の投稿を表示しています。 すべての投稿を表示
ラベル record の投稿を表示しています。 すべての投稿を表示

2020/04/17

Java 14 の新機能 (7) - JEP 359: Records (Preview)

JEP 359: Records (Preview)

record とは

Java 14 から、データを保持するための immutable なクラスを定義するための新しい構文が追加されました。それが record です。
データを保持するために、以下のような性質を持つクラスを定義することは、Java では頻繁にあります。

  • immutable であること
    • コンストラクタでフィールドを全て設定し、フィールドは final
  • 値を取り出すメソッドを持っていること
  • final クラスであること
  • hashCode, equals, toString が適切に定義されていること
とても頻繁に定義するので、IDE で自動生成したり、Lombok のような特殊な仕組みを使ったりしていました。
これからは、record がサポートしてくれます。