Autor Tema: CU00640B. Sobrecarga. ¿Cuántos parámetros debe recibir un constructor Java?  (Leído 3779 veces)

arcanFAC

  • Visitante
Aqui presento este ejercicio:

Citar
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. Compila el código para comprobar que no presenta errores, crea un objeto usando un constructor y luego otro objeto usando el otro constructor. Comprueba que se inicializan correctamente consultando el valor de sus atributos después de haber creado los objetos.

Código: [Seleccionar]
public class Profesor{
    private String nombre;
    private String apellidos;
    private int edad;
    private boolean casado;
    private boolean especialista;
   
    public Profesor(String valorNombre, String valorApellidos, int valorEdad, boolean valorCasado, boolean valorEspecialista){
        nombre = valorNombre;
        apellidos = valorApellidos;
        edad = valorEdad;
        casado = valorCasado;
        especialista = valorEspecialista;
    }
    public Profesor(){
        nombre = "";
        apellidos = "";
        edad = 0;
        casado = false;
        especialista = false;
    }
   
    public void setNombre(String valorNombre){
        nombre = valorNombre;
    }
    public void setApellidos(String valorApellidos){
        apellidos = valorApellidos;
    }
    public void setEdad(int valorEdad){
        edad = valorEdad;
    }
    public void setCasado(boolean valorCasado){
        casado = valorCasado;
    }
    public void setEspecialista(boolean valorEspecialista){
        especialista = valorEspecialista;
    }
   
    public String getNombre(){return nombre;}
    public String getApellidos(){return apellidos;}
    public int getEdad(){return edad;}
    public boolean getCasado(){return casado;}
    public boolean getEspecialista(){return especialista;}
}
« Última modificación: 03 de Abril 2015, 12:40 por Alex Rodríguez »

toni_apr

  • Avanzado
  • ****
  • Mensajes: 497
  • Curiosidad, es uno de los pilares del Conocimiento
    • Ver Perfil
Re:Aprender java.Ejercicio (CU00640B).Sobrecarga de constructores.
« Respuesta #1 en: 10 de Marzo 2015, 22:04 »
Hola arcanFAC

Ejercicio correcto con todos los setters y getters. Bien.

Saludos

arcanFAC

  • Visitante
Re:Aprender java.Ejercicio (CU00640B).Sobrecarga de constructores.
« Respuesta #2 en: 11 de Marzo 2015, 02:46 »
Ok, ty.

nasrry

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 10
    • Ver Perfil
Buenas.
Aquí esta la solución al Ejercicio.

Espero sus Correcciones.

Código: [Seleccionar]
/**
 * ejercicio of class profesor here.
 */
public class Profesor
{
    // instance variables - replace the example below with your own
    private String nombre;
    private String apellidos;
    private int edad;
    private boolean casado;
    private boolean especialista;

    /**
     * Constructor1 para el objeto de la clase Profesor
     */
    public Profesor()
    {
        // inicializacion de variables
        nombre ="";
        apellidos ="";
        edad = 0;
        casado = false;
        especialista =false;
    }

    /**
     * Constructor2 para el objeto de la clase Profesor
     */
    public Profesor(String valorNombre, String valorApellidos)
    {
        // inicializacion de variables
        nombre =valorNombre;
        apellidos =valorApellidos;
        edad = 0;
        casado = false;
        especialista =false;
    }

    /**
     * metodos setters
     */
    public void setNombre(String valorNombre)
    {
        nombre=valorNombre;
    }

    public void setApellidos(String valorApellidos)
    {
        apellidos=valorApellidos;
    }

    public void setEdad(int valorEdad)
    {
        edad=valorEdad;
    }

    public void setCasado(boolean valorCasado)
    {
        casado=valorCasado;
    }

    public void setEspecialista(boolean valorEspecialista)
    {
        especialista=valorEspecialista;
    }   

    /**
     * metodos gettters
     */
    public String getNombre(){return nombre;}

    public String getApellidos(){return apellidos;}

    public int getEdad(){return edad;}

    public boolean getCasado(){return casado;}

    public boolean getEspecialista(){return especialista;}
}

toni_apr

  • Avanzado
  • ****
  • Mensajes: 497
  • Curiosidad, es uno de los pilares del Conocimiento
    • Ver Perfil
Hola nasrry

Tu ejercicio está muy bien, salvo en una cosa.
El constructor que recibe parámetros, solo recibe dos, cuando debía recibir tantos parámetros como atributos tiene la clase.

Otra cosa es que además del constructor con parámetros para todos y cada uno de los atributos, quieras usar un constructor con solo los parámetros que son importantes para tí, y al resto le pones los valores por defecto.
Cosa que también puedes hacer. Pero primero, lo  primero. Constructor para todos los atributos.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

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".