Heim > Java > javaLernprogramm > Hauptteil

Erkunden von Java-Datensatztypen

WBOY
Freigeben: 2024-07-24 11:19:31
Original
706 Leute haben es durchsucht

Exploring Java Record Types

Java Record Types, die in Java 14 als Vorschaufunktion eingeführt und in Java 16 stabilisiert wurden, bieten eine übersichtliche Möglichkeit, unveränderliche Datenträger zu definieren. Sie sollen die Erstellung einfacher datenhaltender Klassen vereinfachen, indem sie den Boilerplate-Code reduzieren und Unveränderlichkeit und Gleichheitssemantik gewährleisten.

Was ist ein Java-Record?

Ein Java Record ist eine spezielle Art von Klasse in der Programmiersprache Java, die zur Modellierung unveränderlicher Daten verwendet wird. Datensätze generieren automatisch Konstruktoren, Zugriffsmethoden sowie die Methoden equal(), hashCode() und toString() und eignen sich daher ideal für Datenübertragungsobjekte.

Einen Datensatz definieren

Das Definieren eines Datensatzes in Java ist unkompliziert. Hier ist ein einfaches Beispiel:

public record Person(String name, int age) {}
Nach dem Login kopieren

In diesem Beispiel enthält der Personendatensatz automatisch Folgendes:

  • Ein privates Endfeld für jede Komponente (Name und Alter).
  • Ein öffentlicher Konstruktor, der diese Felder initialisiert.
  • Getter-Methoden für jedes Feld (name() und age()).
  • Methoden equal(), hashCode() und toString().

Vorteile der Verwendung von Datensätzen

  1. Prägnanz: Datensätze reduzieren den Boilerplate-Code erheblich. Es ist nicht erforderlich, die Methoden „getter“, „equals()“, „hashCode()“ und „toString()“ manuell zu schreiben.
  2. Unveränderlichkeit: Datensätze sind von Natur aus unveränderlich, wodurch sichergestellt wird, dass ihre Felder nach der Erstellung des Datensatzes nicht geändert werden können.
  3. Verbesserte Lesbarkeit: Code, der Datensätze verwendet, ist sauberer und leichter zu verstehen.

Beispiel für die Verwendung von Datensätzen

Hier ist ein praktisches Beispiel, wie Datensätze in einer Java-Anwendung verwendet werden können:

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());
    }
}
Nach dem Login kopieren

Ausgabe:

Employee[id=1, name=Alice, salary=75000.0]
ID: 1
Name: Alice
Salary: 75000.0
Nach dem Login kopieren

Anpassen von Datensätzen

Während Datensätze sofort viele Funktionen bieten, können Sie sie bei Bedarf dennoch anpassen. Beispielsweise können Sie im kanonischen Konstruktor eine Validierungslogik hinzufügen:

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

Abschluss

Java Records sind eine leistungsstarke Ergänzung zur Java-Sprache und erleichtern die Erstellung unveränderlicher Datenträger mit minimalem Code. Sie verbessern die Lesbarkeit des Codes und reduzieren den Boilerplate, sodass sich Entwickler auf die Kernlogik ihrer Anwendungen konzentrieren können.

Das obige ist der detaillierte Inhalt vonErkunden von Java-Datensatztypen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!