Author: Mauricio Alberto Pinzón Hernandez - Cristian CamiloPaz Eraso
Singleton
El patrón de diseño singleton se asegura de que una clase solo tenga una instancia y proporciona un punto de acceso global a ella.
las variables singleton son parecidas a las variables globales con la diferencia de que las singleton son administradas por un metodo de la clase y así también se puede crear solo cuando sea necesaria.
El objetivo de este patrón es conseguir instanciar una clase una sola vez, dando asi un unico punto de acceso a ella. esto suele ser de importancia en algunas clases, un ejemplo podria ser cuando se va hacer uso de una impresora, pues muchos aplicativos tienen acceso a ella como word, excel adobe pdf etc, pero esta solo puede ser usada por un aplicativo a la vez.
Si queremos controlar a dicha clase para que solo pueda tener una instancia, la solución tendra que estar en la misma clase, esta debe proveer de herramientas para hacer dicho control
Como se utiliza:
- Este patrón se debe utilizar cuando surja la necesidad de instanciar un objeto a partir de una clase, y ademas esta solo debera ser accesible a los usuarios por un unico punto de acceso.
- Esta instancia debe poderse extender por las subclases y los usuarios podran tener la facilidad de utilizar una instancia extendida, dejando de lado la modificación del codigo.
Caracteristicas:
- Instancia de la clase controlada, ya que la misma clase se encarga de hacer una instancia de si misma.
- Esta evita el uso de variables globales que almacenan instancias unicas.
- Esta clase puede ser extendida por medio de subclases.
Implementación en java:
public class Ejemplomp {
private static Ejemplomp mp = new Ejemplomp();
private Ejemplomp(){
}
public static Ejemplomp getSigmp(){
return mp;
}
}