Java’da singleton sınıfı nedir ve bir sınıfı nasıl singleton yapabiliriz?

Java’da singleton sınıfı nedir ve bir sınıfı nasıl singleton yapabiliriz?

Singleton tasarım deseni, yalnızca bir nesne örneği oluşturmak için kullanılan bir tasarım desenidir. Bu nesne, uygulamanın herhangi bir yerinde kullanılabilir ve herhangi bir yerde değiştirilemez. Bu, sınıfın sadece bir örneği olduğunda yararlıdır, böylece uygulama boyunca bu nesne kullanılabilir ve bu nesnenin herhangi bir yerde değiştirilmesi engellenir.

Java'da bir sınıfı Singleton yapmak için, aşağıdaki adımlar izlenebilir:

  1. Sınıfın özel yapıcı metodu (private constructor) tanımlanmalıdır, bu da sınıfın dışarıdan bir nesne oluşturulmasını engeller.

  2. Singleton nesnesini saklamak için özel bir statik değişken (private static variable) tanımlanmalıdır.

  3. Singleton nesnesine erişmek için statik bir yöntem (static method) tanımlanmalıdır. Bu yöntem, Singleton nesnesini döndürmeli ve her zaman aynı örneği döndürmeli.

  4. Singleton nesnesinin senkronizasyonu sağlanmalıdır, böylece birden fazla iş parçacığı aynı anda Singleton nesnesine erişemez.

Örnek bir Singleton sınıfı şu şekilde tanımlanabilir:


 

public class Singleton

{

private static Singleton instance; private Singleton()

{ // Özel yapıcı metodu }

public static synchronized Singleton getInstance()

{ if (instance == null) { instance = new Singleton(); } return instance; } }

Bu örnekte, Singleton sınıfı özel bir yapıcı metodu ile tanımlanır ve Singleton nesnesi özel bir statik değişkende saklanır. getInstance() yöntemi, Singleton nesnesine erişim sağlar ve nesne yoksa yeni bir nesne oluşturur. getInstance() yöntemi senkronize edilir, böylece birden fazla iş parçacığı aynı anda Singleton nesnesine erişemez. Bu, bir sınıfın Singleton olarak nasıl tanımlanabileceğine ilişkin basit bir örnektir.

Java’da singleton sınıfı nedir ve bir sınıfı nasıl singleton yapabiliriz?
Paylaş: