Java Enum – Das bessere Singleton

Das Singleton Pattern ist wohl eines der verbreitetsten Design Pattern in der Java Welt. Umso cooler ist es, dass sich Mithilfe einer Enum, ein Singleton erheblich einfacher implementieren lässt.

Vorteile

  • Weniger Code und bessere Lesbarkeit.
  • Enum Singleton kümmern sich um die Serialisierung.
  • Die Erstellung einer Enum Instanz ist Thread-safe.

Implementierung mit Enum

/*
* Singleton Pattern mit Enum
*/

public enum EasySingleton {
   INSTANCE;

   public String sayLala() {
      return "Lala";
   }
}

Aufruf einer Methode des Singletons:

EasySingleton.INSTANCE.sayLala();

Implementierung ohne Enum

/*
* Singleton Pattern ohne Enum
*/

public class EasySingleton {
   private static EasySingleton me = null;

   private EasySingleton() {}

   public static synchronized EasySingleton getInstance() {
      if (me == null) {
         me = new EasySingleton();
      }
      return me;
   }

   public String sayLala() {
      return "Lala";
   }
}

Aufruf einer Methode des Singletons:

EasySingleton.getInstance().sayLala();

Mehr zu dem Thema: http://javarevisited.blogspot.com/2012/07/why-enum-singleton-are-better-in-java.html#ixzz3tSa2Bfnj

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s