Sobes.tech
Junior — Middle

Welke principes moeten worden gebruikt bij het maken van een klasse in Java om deze onveranderlijk te maken?

sobes.tech AI

Antwoord van AI

Om een klasse in Java onveranderlijk (immutable) te maken, moeten verschillende principes worden gevolgd:

  1. Declareer de klasse als final — zodat er geen subclass kan worden gemaakt die het gedrag wijzigt.
  2. Maak alle velden private en final — zodat ze niet kunnen worden gewijzigd na initialisatie.
  3. Bied geen setters aan (methoden om de velden te wijzigen).
  4. Initialiseer alle velden via de constructor.
  5. Als de velden verwijzingen zijn naar wijzigbare objecten (bijvoorbeeld arrays, collecties), maak dan kopieën bij toewijzing en bij het teruggeven uit de getters, zodat externe wijzigingen de interne staat niet beïnvloeden.

Voorbeeld:

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;
    }
}

Zo'n klasse, na het maken van het object, staat toe dat de toestand niet wordt gewijzigd, wat nuttig is voor threadveiligheid en voorspelbaarheid van gedrag.