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:
- Declareer de klasse als
final— zodat er geen subclass kan worden gemaakt die het gedrag wijzigt. - Maak alle velden
privateenfinal— zodat ze niet kunnen worden gewijzigd na initialisatie. - Bied geen setters aan (methoden om de velden te wijzigen).
- Initialiseer alle velden via de constructor.
- 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.