in

Patrón de diseño: patrón singleton

singleton pattern uml diagram

El patrón Singleton es uno de los patrones de diseño más simples de Java. Este tipo de patrón de diseño se incluye en el patrón de creación, ya que este patrón proporciona una de las mejores formas de crear un objeto.

Este patrón involucra una sola clase que es responsable de crear un objeto mientras se asegura de que solo se cree un único objeto. Esta clase proporciona una forma de acceder a su único objeto al que se puede acceder directamente sin necesidad de crear una instancia del objeto de la clase.

Implementación

Vamos a crear un SingleObject clase. SingleObject La clase tiene su constructor como privado y tiene una instancia estática de sí misma.

SingleObject La clase proporciona un método estático para llevar su instancia estática al mundo exterior. SingletonPatternDemo, nuestra clase de demostración usará SingleObject clase para conseguir un SingleObject objeto.

Diagrama UML de patrón singleton

Paso 1

Crea una clase Singleton.

SingleObject.java

public class SingleObject {

   //create an object of SingleObject
   private static SingleObject instance = new SingleObject();

   //make the constructor private so that this class cannot be
   //instantiated
   private SingleObject(){}

   //Get the only object available
   public static SingleObject getInstance(){
      return instance;
   }

   public void showMessage(){
      System.out.println("Hello World!");
   }
}

Paso 2

Obtenga el único objeto de la clase singleton.

SingletonPatternDemo.java

public class SingletonPatternDemo {
   public static void main(String[] args) {

      //illegal construct
      //Compile Time Error: The constructor SingleObject() is not visible
      //SingleObject object = new SingleObject();

      //Get the only object available
      SingleObject object = SingleObject.getInstance();

      //show the message
      object.showMessage();
   }
}

Paso 3

Verifique la salida.

Hello World!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

angular 8 logo

Tutorial de Angular 8 – Javatpoint

apple touch icon@2

html – ¿Cómo se crea un div oculto que no crea un salto de línea o espacio horizontal?