Java 14 でレコードを使用して不変データ オブジェクトを作成する方法
近年、Java 言語の開発は継続的に進歩しており、開発者により効率的で便利なツールが提供されています。 Java 14 で導入されたレコードは、不変データ オブジェクトの作成と管理を簡素化する素晴らしい機能です。この記事では、Java 14 で Records を使用して不変データ オブジェクトを作成する方法を紹介し、いくつかのサンプル コードを示します。
レコードについて説明する前に、まず不変データ オブジェクトとは何かを理解する必要があります。簡単に言えば、不変データ オブジェクトは、一度作成すると変更できないオブジェクトです。スレッドセーフ、簡単なテスト、優れたパフォーマンスなどの重要な機能がいくつかあります。
過去のバージョンの Java では、通常、クラスを使用して不変のデータ オブジェクトを作成していました。この方法では、プライベート変数の定義、ゲッター メソッドの実装、equals メソッドや hashCode メソッドのオーバーライドなど、いくつかの繰り返しコードを手動で記述する必要があります。これらの繰り返しのタスクは退屈でエラーが発生しやすくなります。
Java 14 では、Records がこの問題を解決します。 Records は、いくつかの一般的なメソッドとコードを自動的に生成する新しいクラス宣言フォームで、不変データ オブジェクトの作成を簡素化します。 Record を使用して不変データ オブジェクトを作成する例を次に示します。
public record Person(String name, int age) {}
上記の例では、Person クラスを不変データ オブジェクトとして定義しました。このクラスには、name と age の 2 つのフィールドのみが含まれており、メソッドはありません。コンストラクター、ゲッター、equals および hashCode メソッドを明示的に定義する必要はありません。これらはすべて Records によって自動的に生成されます。
次に、レコードを使用して不変データ オブジェクトを作成する実際の例をいくつか示します。
ケース 1: 学生情報
学生番号、名前、年齢の 3 つのフィールドを含む学生情報のデータ オブジェクトを作成する必要があるとします。 Records を使用してこのオブジェクトを定義できます。
public record Student(String id, String name, int age) {} // 创建一个学生对象 Student student = new Student("1001", "张三", 18); // 获取学生信息 String id = student.id(); String name = student.name(); int age = student.age(); System.out.println("学生信息:学号-" + id + ",姓名-" + name + ",年龄-" + age);
Records を通じて作成された Student クラスには、自動的に生成されたコンストラクターとゲッター メソッドがあり、これらのメソッドを直接使用して生徒の情報を取得できます。
ケース 2: 製品情報
製品名、価格、在庫の 3 つのフィールドを含む製品情報のデータ オブジェクトを作成する必要があるとします。 Records を使用して、このオブジェクトを定義できます。
public record Product(String name, double price, int stock) {} // 创建一个商品对象 Product product = new Product("Java编程入门", 68.0, 100); // 获取商品信息 String name = product.name(); double price = product.price(); int stock = product.stock(); System.out.println("商品信息:名称-" + name + ",价格-" + price + ",库存-" + stock);
同様に、Records を通じて作成された Product クラスには、自動的に生成されたコンストラクターとゲッター メソッドがあり、これらのメソッドを直接使用して製品情報を取得できます。
概要:
上記の例を通じて、Java 14 で Records を使用して不変データ オブジェクトを作成することが非常に簡単かつ効率的であることがわかります。レコードを使用すると、多くの繰り返しコードを手動で記述する必要がなくなり、開発効率が向上します。記録は、より明確で読みやすいコードを提供し、エラーの可能性を減らすのにも役立ちます。
ただし、Records は不変データ オブジェクトの作成を簡素化できますが、すべてのクラス宣言に適しているわけではないことに注意してください。レコードは、不変データを記述するクラスにのみ使用でき、データの状態を変更するメソッドを含めることはできません。さらに、レコードを継承階層で使用することはできません。
要約すると、レコードは Java 14 の非常に便利な機能であり、開発者が不変のデータ オブジェクトをより簡単に作成できるようになります。この記事が Records の理解と使用に役立つことを願っています。今後のプロジェクトでもRecordsのメリットを最大限に発揮して、開発効率とコード品質を向上していただければ幸いです。
以上がJava 14 でレコードを使用して不変のデータ オブジェクトを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

WebStorm Mac版
便利なJavaScript開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
