Autor Tema: Ejercicio Clases con dos o más constructores en Java distintos CU00640B#  (Leído 1660 veces)

Dan_SB

  • Avanzado
  • ****
  • Mensajes: 274
  • *<DanielsCK>*
    • Ver Perfil
Buenas tardes!

Hoy vengo a hacerles una entrega de la practica de este capitulo del curso de programación Java, dice así el enunciado:

Define una clase Profesor considerando los siguientes atributos de clase: nombre (String), apellidos (String), edad (int), casado (boolean), especialista (boolean). Define un constructor que reciba los parámetros necesarios para la inicialización y otro constructor que no reciba parámetros. Crea los métodos para poder establecer y obtener los valores de los atributos.

Se crea dos constructores en la clase (con parámetros y sin parámetros.):

Código: [Seleccionar]
package profe;

public class Profesor {
    private String nombre, apellido;
    private int edad;
    private boolean especialista, casado;
   
    public Profesor(String vNombre, String vApellido, boolean vEspecialista, boolean vCasado, int vEdad){
        nombre = vNombre;
        apellido = vApellido;
        edad = vEdad;
        especialista = vEspecialista;
        casado = vCasado;
    }
   
    public Profesor(){
        nombre = "";
        apellido = "";
        edad = 0;
        especialista = false;
        casado = false;
    }
   
    public void setNombre(String ingresoNombre){
        nombre = ingresoNombre;
    }
   
    public void setApellido(String ingresoApellido){
        apellido = ingresoApellido;
    }
   
    public void setEdad(int ingresoEdad){
        edad = ingresoEdad;
    }
   
    public void setEspecialista(boolean ingresoEspecialista){
        especialista = ingresoEspecialista;
    }
   
    public void setCasado(boolean ingresoCasado){
        casado = ingresoCasado;
    }
   
    public String getNombre(){
        return nombre;
    }
   
    public String getApellido(){
        return apellido;
    }
   
    public int getEdad(){
        return edad;
    }
   
    public boolean getEspecialista(){
        return especialista;
    }
   
    public boolean getCasado(){
        return casado;
    }
}

Ahora los invocaría de las dos formas!
profesor1 = new Profesor();
profesor2 = new Profesor("Daniel","Phillips",false,false,20);


Finalmente, mi pregunta es: ¿Es buena idea tener dos constructores en una clase?

Citar
Cuando más de un constructor o método tienen el mismo nombre pero distintos parámetros decimos que el constructor o método está sobrecargado. La sobrecarga de constructores o métodos permite llevar a cabo una tarea de distintas maneras (por ejemplo crear un objeto Persona con un nombre ya establecido o crearlo sin nombre establecido).
« última modificación: 18 de Agosto 2016, 22:32 de Ogramar »
"Luchar por tus sueños y cumplirlos... eso es vivir.."

toni_apr

  • Avanzado
  • ****
  • Mensajes: 498
  • Curiosidad, es uno de los pilares del Conocimiento
    • Ver Perfil
Re:Ejercicio (CU00640B), Clases con dos o más constructores en Java.
« Respuesta #1 : 20 de Marzo 2015, 22:21 »
Hola Dan

Ejercicio perfecto. OK

Respecto a tu pregunta:
Citar
Finalmente, mi pregunta es: ¿Es buena idea tener dos constructores en una clase?

Tal vez al hecho de tener sobrecarga de constructores lo veas como la desventaja de soportar un peso demasiado grande.
Pero no, es todo lo contrario. Piensa en el mecánico que en su caja de herramientas tiene no una, sino varias llaves. Y tiene la posibilidad de escoger la que desee según la ocasión para realizar su reparación.
Así pues, has de pensar en esa sobrecarga de métodos como una ventaja.

Saludos

 

Esto es un laboratorio de ideas...
Aprender a programar

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".