Les types d'enregistrement Java, introduits dans Java 14 en tant que fonctionnalité d'aperçu et rendus stables dans Java 16, fournissent un moyen concis de définir des supports de données immuables. Ils sont conçus pour simplifier la tâche de création de classes simples de conservation de données en réduisant le code passe-partout et en garantissant l'immuabilité et la sémantique d'égalité.
Un enregistrement Java est un type spécial de classe dans le langage de programmation Java utilisé pour modéliser des données immuables. Les enregistrements génèrent automatiquement des méthodes constructeurs, accesseurs, equals(), hashCode() et toString(), ce qui les rend idéales pour les objets de transfert de données.
Définir un enregistrement en Java est simple. Voici un exemple simple :
public record Person(String name, int age) {}
Dans cet exemple, l'enregistrement Personne inclut automatiquement :
Voici un exemple pratique de la façon dont les enregistrements peuvent être utilisés dans une application 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()); } }
Sortie :
Employee[id=1, name=Alice, salary=75000.0] ID: 1 Name: Alice Salary: 75000.0
Bien que les enregistrements offrent de nombreuses fonctionnalités prêtes à l'emploi, vous pouvez toujours les personnaliser si nécessaire. Par exemple, vous pouvez ajouter une logique de validation dans le constructeur canonique :
public record Product(String name, double price) { public Product { if (price <= 0) { throw new IllegalArgumentException("Price must be positive"); } } }
Java Records est un ajout puissant au langage Java, facilitant la création de supports de données immuables avec un minimum de code. Ils améliorent la lisibilité du code et réduisent le passe-partout, permettant aux développeurs de se concentrer sur la logique fondamentale de leurs applications.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!