Skip to content

Latest commit

 

History

History
57 lines (42 loc) · 1.23 KB

Project Singleton.md

File metadata and controls

57 lines (42 loc) · 1.23 KB

package one.digitalinnovation.gof;

  • Singleton "preguiçoso"
  • @author Izaque

public class SingletonLazy {

  private static SingletonLazy instancia;
  
  private SingletonLazy(); {
      super();
  }
  public static SingletonLazy getInstancia() {    
     if (instancia == null) {
          instancia = new SingletonLazy();
      }
      return instancia;
  }

}

package one.digitalinnovation.gof;

  • Singleton "apressado"
  • @author Izaque

public class SingletonEager {

  private static SingletonEager instancia = new SingletonEager();

  private SingletonEager(); {
      super();
  }

  public static SingletonEager getInstancia() {
      return instancia;
  }

}

package one.digitalinnovation.gof;

  • Singleton "Suporte preguiçoso"
  • @see Referencia
  • @author Izaque

public class SingletonLazyHolder {

private static class InstanceHolder {
    public static SingletonLazyHolder instancia = new SingletonLazyHolder();
}
private SingletonLazyHolder(); {
    super();
}

public static SingletonLazyHolder getInstancia() {
    return InstanceHolder.instancia;
}

}