Autor Tema: Practica CU00654B La palabra clave this en java  (Leído 3585 veces)

BelCrow

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 46
  • Técnico en Redes (CCNA-IT).
    • Ver Perfil
Practica CU00654B La palabra clave this en java
« en: 08 de Septiembre 2014, 21:47 »
favor revisar....

Profesor:
Código: [Seleccionar]
//clase
public class Profesor {
    private String nombre;
    private String apellido;
    private int edad;
    private boolean casado;
    private boolean especialista;

    //constructor sin parametr
    public Profesor () {
        this("", "", 0, false, false);
    }

    //constructor con parametros
    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;
    }

    //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;}
}
public lenguajePoderoso () {
          java = "poder";
       }

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Practica CU00654B La palabra clave this en java
« Respuesta #1 en: 09 de Septiembre 2014, 09:02 »
Hola, el código está perfecto. Además es un buen ejemplo de diferentes usos de la palabra clave this en java.

En este fragmento:

    public Profesor () {
        this("", "", 0, false, false);
    }

La palabra clave this seguida de paréntesis y parámetros lo que hace es invocar un constructor (al constructor que recibe cinco parámetros). En este caso invoca al constructor pasándole como nombre "", como apellido "", como edad 0, como casado false y como especialista false. También podía haberse escrito con iguales resultados:

   public Profesor () {
        nombre = "";
        apellido = "";
        edad = 0;
        casado = false;
        especialista = false;
    }

Esta forma, aunque es igualmente válida, consume más líneas de código.

En cambio this en otras partes del código como: this.nombre = nombre; lo que hace es diferenciar entre el atributo (this.nombre) y el parámetro que recibe la función (nombre).

Resulta un ejemplo interesante.

Saludos

BelCrow

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 46
  • Técnico en Redes (CCNA-IT).
    • Ver Perfil
Re:Practica CU00654B La palabra clave this en java
« Respuesta #2 en: 09 de Septiembre 2014, 11:51 »
Gracias Alex, esa forma la vi en el ejercicio CU00652B que la usaste para invocar un constructor, me pareció super practico, fácil y ademas con menos lineas, así que decidí implementarlo en este ejercicio...

Quiero hacer algunas pruebas y luego hacer preguntas sobre este modo de crear constructores, las haré en este mismo tema pero cuando llegue a mi casa y las realice..
public lenguajePoderoso () {
          java = "poder";
       }

BelCrow

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 46
  • Técnico en Redes (CCNA-IT).
    • Ver Perfil
Re:Practica CU00654B La palabra clave this en java
« Respuesta #3 en: 10 de Septiembre 2014, 21:42 »
Ya hice las pruebas y ellas solas respondieron mis dudas...

Hay que usas this en el constructor siguiendo el orden en las que fueron puestas las variables.. si te falta una variable, te tira error y si no lo haces en orden también... incluso si las variables fueron introducidas de un solo golpe sigue teniendo las mismas reglas... ejp.

Código: [Seleccionar]
public class Profesor2 {
    private String nombre, apellido;
    private int edad;
    private boolean casado, especialista;

    //constructor sin parametr
    public Profesor2 () {
        this("", "", 0, false, false);
    }
}

........
public lenguajePoderoso () {
          java = "poder";
       }

 

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