Autor Tema: CU00654B Ejemplo this en java. Contenido null por defecto de un objeto.  (Leído 2707 veces)

Lorenzo31

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 381
    • Ver Perfil
Buenas, entrego la solución del 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. El nombre de los parámetros debe ser el mismo que el de los atributos y usar this para asignar los parámetros recibidos a los campos del objeto. Crea los métodos para poder establecer y obtener los valores de los atributos, con sobrecarga de nombres y uso de this en los métodos setters (los que sirven para establecer el valor de los atributos). Compila el código para comprobar que no presenta errores, crea un objeto usando el constructor con sobrecarga. Comprueba que se inicializa correctamente consultando el valor de sus atributos después de haber creado el objeto. Usa los métodos setters y comprueba que funcionen correctamente.

Comentar que en el constructor sin parametros he utilizado para probar, la otra forma de usar el this(parametros) en referencia al constructor creado en sobrecarga con el de sin parametros. (no se si se debe o mejor poner los campos uno a uno manual).

Código: [Seleccionar]

public class Profesor{
   
    //Campos de Clase
   
    private String nombre;
    private String apellido;
    private int edad;
    private boolean casado;
    private boolean especialista;
   
    //Constructor con parámetros con mismo nombre que campos de Clase
   
    public Profesor(String nombre, String apellido, int edad, boolean casado, boolean especialista){
        this.nombre = nombre;
        this.apellido = apellido;
        this.edad = edad;
        this.casado = casado;
        this.especialista = especialista;
    }
   
    // Constructor sin parámetros
   
    public Profesor(){
        this("Juan", "Lopez", 40, false, true);
    }
   
    //Setters
   
    public void setNombre(String nombre){
        this.nombre = nombre; }
    public void setApellido(String apellido){
        this.apellido = apellido; }
    public void setEdad(int edad) {
        this.edad = edad; }
    public void setCasado (boolean casado){
        this.casado = casado;}
    public void setEspecialista (boolean especialista){
        this.especialista = especialista; }
       
    //Getters
   
    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 de Clase
   

« Última modificación: 24 de Marzo 2015, 11:55 por Alex Rodríguez »

toni_apr

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

Ejercicio correcto.

El uso de this en el constructor sin parámetros es válido. Lo único, es que se hace raro que cada profesor nuevo que venga se llame Juan en lugar de dejar la casilla vacía, es decir "" una cadena vacía, etc. etc...

El constructor sin parámetros se usa para asignar valores por defecto a los atributos.
Se pueden asingar los parámetros por defecto usando this. ¿Cómo lo harías?

Saludos

Lorenzo31

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 381
    • Ver Perfil
Si claro que se podria, simplemente con un this ("","",0,false,false). Era por probar una forma de inicializar distinta, si entiendo lo que quieres decir, es raro que todos los que se inicializan con el constructor vacío se llamen igual.
ok entiendo toni gracias.

 

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