Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Damian en 22 de Enero 2017, 03:50

Título: Clases con dos o más constructores Java distintas formas crear objetos CU00640B
Publicado por: Damian en 22 de Enero 2017, 03:50
 Sobrecarga de constructores o métodos.

Ejercicio de éste nivel del curso Aprender programación java desde cero de aprenderaprogramar.com

Código: [Seleccionar]
/*Ejemplo de identificación de un profesor 
 */
public class Profesor
{
   private String nombre;
   private String apellido;
   private int edad;
   private boolean casado;
   private boolean especialista;
   
   //Constructor 1: clasificación de un profesor
    public Profesor(int valorEdad, boolean valorCasado, boolean valorEspecialista)
    {
     nombre= "Miguel";
     apellido= "Villanueva";
     edad= valorEdad;
     casado= valorCasado;
     especialista= valorEspecialista;
    }
   
    //Constructor 2: características de un profesor
   
    public Profesor(){
        nombre= "";
        apellido= "";
        edad= 0;
        casado= false;
        especialista= false;
    }
   
    public String getNombre(){return nombre;}
    public String getApellido(){return apellido;}
    public int getEdad(){return edad;}
    public boolean getCasado(){return casado;}
    public boolean getEspecialista(){return especialista;}
    //Cierre del método
}//Cierre de la clase

En la compilación del código y en la ejecución por consola, todo resulta bien.
Título: Re:Clases con dos o más constructores en Java. (CU00640B)
Publicado por: pedro,, en 23 de Enero 2017, 15:48
Buenas.

Sobre el constructor con parámetros, comentarte lo mismo que te comenté en el ejercicio anterior, crear una clase Persona para crear solo personas con un mismo nombre no tendría mucho sentido, sería mejor dejar el nombre y el apellido vacíos.

Te faltan los setter para completar el ejercicio.

Saludos. ;D
Título: Re:Clases con dos o más constructores en Java. (CU00640B)
Publicado por: Damian en 24 de Enero 2017, 03:47
Gracias Pedro nuevamente.

En cuento al uso de los setter, no los utilice, porque en el ejemplo que estaba en está clase (CU00640B), no se utilizaban, y me guíe por éste ejemplo, ya que simplemente estaban los getter, pero ahora lo corrijo, para poderlo enviar nuevamente..

Corrección

Código: [Seleccionar]
/*Ejemplo de identificación de un profesor 
 */
public class Profesor
{
   private String nombre;
   private String apellido;
   private int edad;
   private boolean casado;
   private boolean especialista;
   
   //Constructor 1: clasificación de un profesor
    public Profesor(int valorEdad, boolean valorCasado, boolean valorEspecialista)
    {
     nombre= "";
     apellido= "";
     edad= valorEdad;
     casado= valorCasado;
     especialista= valorEspecialista;
    }
   
    //Constructor 2: características de un profesor
   
    public Profesor(){
        nombre= "";
        apellido= "";
        edad= 0;
        casado= false;
        especialista= false;
    }//Cierre del constructor
   
    //Métodos setter
    public void setNombre(String valorNombre){
        nombre= valorNombre;
    }
    public void setApellido(String valorApellido){
        apellido= valorApellido;
    }
    public void setEdad(int valorEdad){
        edad= valorEdad;
    }public void setCasado(boolean valorCasado){
        casado= valorCasado;
    }public void setEspecialista(boolean valorEspecialista){
        especialista= valorEspecialista;
    }//Cierre del método
   
    //Método getter   
    public String getNombre(){return nombre;}
    public String getApellido(){return apellido;}
    public int getEdad(){return edad;}
    public boolean getCasado(){return casado;}
    public boolean getEspecialista(){return especialista;}
    //Cierre del método
}//Cierre de la clase

Listo Pedro, ya está corregido.

Gracias y Saludos