首頁 > Java > java教程 > 如何在Java 14中使用Records類別來建立可變和不可變的資料對象

如何在Java 14中使用Records類別來建立可變和不可變的資料對象

王林
發布: 2023-08-01 08:13:49
原創
906 人瀏覽過

如何在Java 14中使用Records類別來建立可變和不可變的資料對象

引言:
在Java 14之前,我們通常使用類別來建立資料對象,在其中定義字段,產生getter和setter方法。這樣的程式碼是冗長而繁瑣的,需要大量的樣板程式碼。 Java 14引進了Records類,它提供了一種更簡潔的方式來建立資料物件。 Records類別可以自動產生欄位、建構函式、getter和equals、hashCode等方法。本文將介紹如何在Java 14中使用Records類別來建立可變和不可變的資料對象,並給出對應的程式碼範例。

可變的資料物件:
在Java中,我們可以使用關鍵字"record"來建立一個Record類別。這個類別會自動產生欄位和許多方法。我們可以使用var關鍵字來定義並初始化一個可變的資料物件。

下面是一個範例,展示如何建立一個可變的Person物件:

record Person(String name, int age) {}
登入後複製

這個Person類別有兩個欄位:name和age。我們可以使用以下程式碼來使用這個類別:

var person = new Person("John", 30);
person.setName("Mike");
person.setAge(35);
登入後複製

在這個範例中,我們建立了一個名為person的可變對象,並設定了它的name和age欄位。我們也可以使用產生的setName和setAge方法來修改這個物件的欄位值。

不可變的資料對象:
要建立一個不可變的資料對象,我們只需要將Record類別的欄位標記為final。這樣,這些欄位就不能被修改。我們可以使用以下程式碼範例:

record Person(String name, int age) {
    public Person {
        if(age < 0) {
            throw new IllegalArgumentException("Age cannot be negative");
        }
    }
}
登入後複製

在這個範例中,我們為Person類別新增了一個建構子。我們使用建構函式來驗證age欄位的值。如果age小於0,將拋出一個異常。

這個不可變的Person物件可以使用以下程式碼來建立和使用:

var person = new Person("John", 30);
System.out.println(person.name());
System.out.println(person.age());
登入後複製

在這個範例中,我們建立了一個名為person的不可變對象,並透過呼叫name和age方法來取得欄位的值。由於age欄位是final的,所以它不能被修改。

總結:
在本文中,我們介紹如何在Java 14中使用Records類別來建立可變和不可變的資料物件。我們展示瞭如何建立可變和不可變的Person對象,並給出相應的程式碼範例。 Records類別提供了一種簡潔的方式來建立資料對象,減少了冗長且重複的程式碼。它是Java 14中一個非常有用的新特性,可以提高開發效率和程式碼品質。大家可以嘗試在自己的專案中使用Records類別來建立資料對象,體驗它的便利之處。

以上是如何在Java 14中使用Records類別來建立可變和不可變的資料對象的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板