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:
- Sınıfı
finalolarak ilan edin — böylece alt sınıf oluşturulamaz ve davranış değiştirilemez. - Tüm alanları
privatevefinalyapın — böylece bunlar başlangıçtan sonra değiştirilemez. - Setter (alanları değiştiren metodlar) sağlamayın.
- Tüm alanları yapıcı (constructor) aracılığıyla başlatın.
- 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.