Sobes.tech
Junior — Middle

Pouvez-vous expliquer ce qu'est une classe immuable en Java et comment elle est créée?

sobes.tech IA

Réponse de l'IA

Une classe immuable en Java est une classe dont les objets ne peuvent pas être modifiés après leur création. Ces classes sont utiles pour assurer la sécurité des données et la concurrence.

Pour créer une classe immuable, il faut:

  • Rendre la classe final pour qu'elle ne puisse pas être héritée et que son comportement ne puisse pas être modifié.
  • Rendre tous les champs private et final.
  • Ne pas fournir de setters (méthodes pour modifier les champs).
  • Initialiser tous les champs via le constructeur.
  • Si les champs sont des objets modifiables, retourner des copies d'eux dans les getters pour éviter de modifier l'état interne.

Exemple:

public final class ImmutablePerson {
    private final String name;
    private final int age;

    public ImmutablePerson(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}