Autor Tema: Ejercicio CU00654B concepto constructor java  (Leído 2554 veces)

jogonzalezmor

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 26
    • Ver Perfil
Ejercicio CU00654B concepto constructor java
« en: 05 de Julio 2014, 04:35 »
Envío mi código...

Código: [Seleccionar]

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;

    /**
     * Constructor de objetos de la clase Profesor que recibe parámetros
     */
    public Profesor(String nombre, String apellidos, int edad, boolean casado, boolean especialista)
    {
        // Se inicializan las variables
        this.nombre = nombre;
        this.apellidos = apellidos;
        this.edad = edad;
        this.casado = casado;
        this.especialista = especialista;
 
    }
   
    /**
     * Constructor de objetos de la clase Profesor que no recibe parámetros
     */
    public Profesor()
    {
        // Se inicializan las variables
        this.nombre = nombre;
        this.apellidos = apellidos;
        this.edad = edad;
        this.casado = casado;
        this.especialista = especialista;
 
    }

/**
 * Métodos setter and getter
 */
   public void setNombre (String nombre) {
        this.nombre = nombre; //this.remitente es el campo y remitente el parámetro
    }//Fin del método setNombre
   
    public void setApellidos (String apellidos) {
        this.apellidos = apellidos; //this.remitente es el campo y remitente el parámetro
    }//Fin del método setApellidos
   
    public void setEdad (int edad) {
        this.edad = edad; //this.remitente es el campo y remitente el parámetro
    }//Fin del método setEdad
   
    public void setCasado (boolean casado) {
        this.casado = casado; //this.remitente es el campo y remitente el parámetro
    }//Fin del método setCasado
   
    public void setEspecialista (boolean especialista) {
        this.especialista = especialista; //this.remitente es el campo y remitente el parámetro
    }//Fin del método setEspecialista
   
    public String getNombre(){return nombre;}//Fin del método getNombre
    public String getApellidos(){return apellidos;}//Fin del método getApellidos
    public int getEdad(){return edad;}//Fin del método getEdad
    public boolean getCasado(){return casado;}//Fin del método getCasado
    public boolean getEspecialista(){return especialista;}//Fin del método getEspecialista
   
}//Fin de la clase Profesor


No estoy seguro si en ambos constructores se deben inicializar las variables con this.

Atento a sus comentarios, me despido....

Salu2...
« Última modificación: 31 de Agosto 2014, 19:11 por Alex Rodríguez »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Re:Ejercicio CU00654B
« Respuesta #1 en: 05 de Julio 2014, 10:06 »
Hola, tienes que revisar el código porque no estás creando bien los constructores.

En el primer constructor this.nombre = nombre; significa que el atributo nombre toma el valor del parámetro nombre (ahí this te sirve para diferenciar una cosa y otra).

En el segundo constructor this.nombre = nombre; es lo mismo que escribir nombre = nombre; , es decir, que eso no significa nada. this sirve para diferenciar cuándo te refieres a un atributo y cuándo a un parámetro o variable local, pero si no hay parámetro ni variable local this.nombre es lo mismo que nombre.

Cuando el constructor recibe parámetros, servirán para inicializar los atributos con esos parámetros. Cuando el constructor no recibe parámetros, tendrás que inicializarlos a unos valores de defecto (normalmente cadenas vacías, ceros y false).

Salud2s

 

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