¿Cuándo y cómo se usa un patrón de diseño singleton?

El patrón Singleton significa que en cualquier momento podemos crear solo una instancia / objeto de esa clase. Este patrón impide crear múltiples instancias.

aquí para usar Singleton o cuándo elegir Singleton:

-> La clase que no contiene atributo ni ningún estado.

-> La clase, para la que queremos crear solo un objeto o instancia

Cómo crear una clase Singleton

Haz que el constructor sea privado.

proporcione un método estático y cree el objeto dentro de ese método marcando la condición.

paquete com.singleton.tempconverter;

convertidor de temperatura de clase pública {
convertidor de convertidor de temperatura estático privado = nulo;
convertidor de temperatura privado ()
{

}
Public static TemperatureConverter getConverter ()
{
if (convertidor == nulo)
{
convertidor = nuevo TemperatureConverter ();
}
convertidor de retorno;
}
public double convertCelceioustToFahrenheit (doble temperatura)
{
retorno (temp * 9) / 5 + 32;
}

public double convertFahrenheitToCelceious (doble temperatura)
{
retorno (temp-32) * 5/9;
}
}

Clase de prueba
===========
prueba de paquete;

import com.singleton.tempconverter.TemperatureConverter;

TempTest de clase pública {
public static void main (String [] args) {
TemperatureConverter converter = TemperatureConverter.getConverter ();
System.out.println (converter.convertCelceioustToFahrenheit (37));
System.out.println (converter.convertFahrenheitToCelceious (98.6));
}

}

  • Este es uno de los casos de uso en tiempo real. Todas las clases de convertidor, deben ser singleton para que podamos usarlo en cualquier clase con una sola instancia, ya que no hay ningún atributo al lado de las clases singleton.
  • Todas las clases de validación deben ser singleton para que una instancia se pueda usar en varias clases.
  • Para crear una conexión como Singleton

Espero que esto te ayude, si tienes alguna pregunta, puedes enviarme un ping.

Cuando solo necesita una instancia de un tipo específico de clase en todo el dominio de la aplicación. En la actualidad, se considera principalmente antipatrón, debido a que hay formas mejores y menos restrictivas de mantener una sola instancia de una clase en un contexto.