Java - contructores privados en java

   
Vista:

contructores privados en java

Publicado por Yael (5 intervenciones) el 20/02/2009 06:01:02
Un saludo a todos.

Alguien me podria decir como funciona un contructor privado. Como puedo hacer uso de tal contructor para hacer un objeto de esa clase?
¿Cómo es posible crear objetos de una clase cuyos constructores son todos privados?
Si podrian poner un ejemplo sencillo de como hacerlo seria aceptable.

De antemano gracias por la ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:contructores privados en java

Publicado por puta.hostia (69 intervenciones) el 20/02/2009 09:39:30
Hola, Yael.

Los constructores privados, como todo que tiene modificador "private", tiene acceso solamente desde la clase a la que pertenece. Es decir que no puedes invocar un constructor privado desde fuera. La única forma de llamar un constructor privado es através de un método estático de la clase. Si buscas el patrón "singleton" verás un uso muy común de constructor privado. Funciona mas o menos así:

public class PruebaConstructorPrivado {

private static PruebaConstructorPrivado instancia = null;

private PruebaConstructorPrivado() {
// hacer las cosas propias de inicialización etc.
}

public static PruebaConstructorPrivado getInstance(){
if(instancia == null){
instancia = new PruebaConstructorPrivado();
}
return instancia;
}
}

Ahora para obtener un objeto de tipo PruebaConstructorPrivado llamas getInstance y listo.
Este patrón es bastante común y sirve para tener solo y exclusivamente un único objeto de una clase y que este objeto siempre sea el mismo.

Espero haberte sido útil.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

RE:contructores privados en java

Publicado por Ghost97 (1 intervención) el 16/11/2016 00:53:55
hola.
ya implemente ese ejemplo pero queria saber como lo mandas a llamar de la otra clase??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:contructores privados en java

Publicado por puta.hostia (69 intervenciones) el 20/02/2009 09:39:31
Hola, Yael.

Los constructores privados, como todo que tiene modificador "private", tiene acceso solamente desde la clase a la que pertenece. Es decir que no puedes invocar un constructor privado desde fuera. La única forma de llamar un constructor privado es através de un método estático de la clase. Si buscas el patrón "singleton" verás un uso muy común de constructor privado. Funciona mas o menos así:

public class PruebaConstructorPrivado {

private static PruebaConstructorPrivado instancia = null;

private PruebaConstructorPrivado() {
// hacer las cosas propias de inicialización etc.
}

public static PruebaConstructorPrivado getInstance(){
if(instancia == null){
instancia = new PruebaConstructorPrivado();
}
return instancia;
}
}

Ahora para obtener un objeto de tipo PruebaConstructorPrivado llamas getInstance y listo.
Este patrón es bastante común y sirve para tener solo y exclusivamente un único objeto de una clase y que este objeto siempre sea el mismo.

Espero haberte sido útil.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar