Sobes.tech
Junior — Middle

Ar galite paaiškinti, kas yra nekintama klasė Javaje ir kaip ji kuriama?

sobes.tech AI

Atsakymas iš AI

Ne keičiama Java klasė yra klasė, kurios objektai negali būti pakeisti po jų sukūrimo. Tokios klasės yra naudingos duomenų saugumui ir daugiagijų vykdymui užtikrinti.

Norint sukurti nekeičiama klasę, reikia:

  • Padaryti klasę final, kad ji negalėtų būti paveldėta ir jos elgesys nebūtų keičiama.
  • Visus laukus padaryti private ir final.
  • Nesuteikti setterių (metodų, kurie keičia laukus).
  • Visus laukus inicializuoti per konstruktorių.
  • Jei laukų yra keičiamų objektų, grąžinti jų kopijas getteriuose, kad išvengtumėte vidinio būsenos keitimo.

Pavyzdys:

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