Sobes.tech
Junior — Middle

Java'da bir sınıf oluştururken onu değiştirilemez yapmak için hangi ilkeler kullanılmalıdır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Java'da bir sınıfı değiştirilemez (immutable) yapmak için birkaç prensip izlenmelidir:

  1. Sınıfı final olarak ilan edin — böylece alt sınıf oluşturulamaz ve davranış değiştirilemez.
  2. Tüm alanları private ve final yapın — böylece bunlar başlangıçtan sonra değiştirilemez.
  3. Setter (alanları değiştiren metodlar) sağlamayın.
  4. Tüm alanları yapıcı (constructor) aracılığıyla başlatın.
  5. Alanlar değiştirilebilir nesne referanslarıysa (örneğin, diziler, koleksiyonlar), atama ve getter'lar aracılığıyla döndürürken kopyalarını oluşturun, böylece dış değişiklikler iç durumu etkilemez.

Örnek:

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

Bu tür bir sınıf, nesne oluşturulduktan sonra durumunu değiştirmeye izin vermez, bu da çoklu iş parçacığı güvenliği ve davranışın öngörülebilirliği için faydalıdır.