首頁 >Java >java教程 >探索 Java 記錄類型

探索 Java 記錄類型

WBOY
WBOY原創
2024-07-24 11:19:31815瀏覽

Exploring Java Record Types

Java 記錄類型作為預覽功能在 Java 14 中引入,並在 Java 16 中變得穩定,提供了一種定義不可變資料載體的簡潔方法。它們旨在透過減少樣板程式碼並確保不變性和相等語義來簡化創建簡單資料保存類別的任務。

什麼是 Java 記錄?

Java 記錄是 Java 程式語言中的一種特殊類,用於對不可變資料進行建模。 Records 自動產生建構子、存取器、equals()、hashCode() 和 toString() 方法,使其成為資料傳輸物件的理想選擇。

定義記錄

在 Java 中定義記錄非常簡單。這是一個簡單的例子:

public record Person(String name, int age) {}

在此範例中,人員記錄自動包括:

  • 每個組件的私有最終欄位(姓名和年齡)。
  • 初始化這些欄位的公共建構函數。
  • 每個欄位的Getter方法(name()和age())。
  • equals()、hashCode() 和 toString() 方法。

使用記錄的好處

  1. 簡潔:記錄顯著減少了樣板程式碼。無需手動編寫 getter、equals()、hashCode() 和 toString() 方法。
  2. 不可變性:記錄本質上是不可變的,確保記錄建立後其欄位無法修改。
  3. 增強可讀性:使用記錄的程式碼更乾淨、更容易理解。

記錄的使用範例

以下是如何在 Java 應用程式中使用記錄的實際範例:

public record Employee(int id, String name, double salary) {}

public class RecordExample {
    public static void main(String[] args) {
        Employee emp = new Employee(1, "Alice", 75000);
        System.out.println(emp);

        // Accessing fields
        System.out.println("ID: " + emp.id());
        System.out.println("Name: " + emp.name());
        System.out.println("Salary: " + emp.salary());
    }
}

輸出:

Employee[id=1, name=Alice, salary=75000.0]
ID: 1
Name: Alice
Salary: 75000.0

客製化記錄

雖然記錄提供了許多開箱即用的功能,但您仍然可以根據需要自訂它們。例如,您可以在規範建構函式中新增驗證邏輯:

public record Product(String name, double price) {
    public Product {
        if (price <= 0) {
            throw new IllegalArgumentException("Price must be positive");
        }
    }
}

結論

Java 記錄是 Java 語言的強大補充,可以更輕鬆地用最少的程式碼建立不可變的資料載體。它們增強了程式碼可讀性並減少了樣板文件,使開發人員能夠專注於應用程式的核心邏輯。

以上是探索 Java 記錄類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:Loom 專案簡介下一篇:Loom 專案簡介