JAVA’DA IMMUTABLE CLASS

Merhaba bu yazıda JAVA’da, “Immutable” yani Türkçesi ile “Değiştirilemez” olarak anlandırılan sınıfları inceleyeceğiz. Aşağıdaki konu başlıklarına kısaca değineceğiz.

  • Immutable class nedir?
  • Hangi classlar immutable dır?
  • Kendi immutable sınıfımızı oluşturabilir miyiz?
  1. Immutable Class Nedir?

Immutable Sınıflar Türkçe karşılığından da anlaşılacağı üzere değiştirilemezlerdir. Bunu biraz açacak olursak,

  • Bu sınıflardan yeni nesneler türetilemez. Yani kalıtılamaz. Çünkü bu sınıflar final olmalıdır.
  • Bu sınıfların alanları yani özellikleri de final olmalıdır.
  • Aynı zamanda bu sınıfların alanları private da olmalıdır. Doğrudan erişilip değiştirilebilir özellikleri ortadan kaldırılmalıdır.
  • Bu sınıfların alanları bir başka metod üzerinden de değiştirilememeli olmalıdır. Bu yüzden setter metodlarına sahip olamazlar.
  1. Java’da Immutable Sınıflara Hangilerini Örnek Verebiliriz?

Javadaki Wrapper classları Immutable sınıflara örnek olarak verebiliriz. Örneğin Integer, Double, Boolean sınıfları, bunlara ek olarak da String sınıfı birer Değiştirilemez sınıftır. Bu sınıfların özelliklerini değiştiremeyiz ve bu sınıflardan başka bir sınıf türetemeyiz.

  1. Kendi Immutable Sınıfımızı Üretebilir miyiz?

Evet, yukarıdaki şartları sağlayacak şekilde oluşturduğumuz bütün sınıflar birer Değiştirilemez sınıf olacaktır. Örnek olarak bir Değiştirilemez sınıf yapısını aşağıda görebilirsiniz:

Yukarıda basit bir Immutable sınıf tasarlamış olduk. Bu sınıftan üretilen bir nesne yalnızca yapıcı metod vasıtası ile özelliklerini doldurabilir. Diğer türlü hiç bir şekilde setter metodları yoktur yani program akışından başka bir yöntemle bu özellikler değiştirilemez veya güncellenemez.

Leave a Reply

Your email address will not be published. Required fields are marked *