Junior — Middle
Kā var īstenot klasi, lai tās stāvoklis būtu nemainīgs pēc tās izveides?
sobes.tech AI
Atbilde no AI
Lai izveidotu nemainīgu (immutable) klasi Java, ir jāveic šādi:
- Padarīt klasi
final, lai tā nevarētu mantoēt vai mainīt tās uzvedību. - Visus klases laukus deklarēt kā
private final. - Visus laukus inicializēt caur konstruktoru.
- Neizmantot setter-metodes (metodes, kas maina laukus).
- Ja laukiem ir maināmi objekti (piemēram, masīvi, kolekcijas), to kopijas veidot, nododot konstruktorā un atgriežot no getteriem.
Piemērs:
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;
}
}
Šāda klase, pēc objekta izveides, neļauj mainīt tās stāvokli.