Autor Tema: Java ¿es necesario usar this para return de un atributo en método get? CU00654B  (Leído 3903 veces)

luis sanz

  • Sin experiencia
  • *
  • Mensajes: 49
    • Ver Perfil
Código: [Seleccionar]
public class Profesor
{
   private String nombre;
   private String apellidos;
   private int edad;
   private boolean casado;
   private boolean especialista;
   
   public Profesor(String nombre,String apellidos,int edad,boolean casado,boolean especialista)
   {
       this.nombre=nombre;
       this.apellidos=apellidos;
       this.edad=edad;
       this.casado=casado;
       this.especialista=especialista;
   }
   public Profesor(){}
   
   public void setNombre(String nombre)
   { this.nombre=nombre;}
   public void setApellidos(String apellidos)
   { this.apellidos=apellidos;}
   public void setEdad(int edad)
   { this.edad=edad;}
   public void setCasado(boolean casado)
   { this.casado=casado;}
   public void setEspecialista(boolean especialista)
   { this.especialista=especialista;}
   
   public String getNombre(){return this.nombre;}
   public String getApellidos(){return this.apellidos;}
   public int getEdad(){return this.edad;}
   public boolean getCasado(){return this.casado;}
   public boolean getEspecialista(){return this.especialista;}
   
}
« Última modificación: 03 de Agosto 2015, 19:26 por Alex Rodríguez »

RaGa

  • Moderador Global
  • Intermedio
  • *******
  • APR2.COM
  • Mensajes: 234
    • Ver Perfil
Re:CU00654B AAP JAVA - Palabra clave "this" en java
« Respuesta #1 en: 03 de Agosto 2015, 04:22 »
Hola Luis:

Estuve revisando tu ejercicio y lo veo muy bien.
Fíjate solamente que para cumplir de manera completa con la consigna que el ejercicio plantea, faltaría crear un segundo Constructor que no reciba parámetros.

Saludos.

luis sanz

  • Sin experiencia
  • *
  • Mensajes: 49
    • Ver Perfil
Re:CU00654B AAP JAVA - Palabra clave "this" en java
« Respuesta #2 en: 03 de Agosto 2015, 05:49 »
Gracias RaGa por la corrección. Tengo una duda, en los métodos get es necesario introducir el código this o ya no es necesario?. Osea puede ser "return nombre" o "return this.nombre"

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Hola Luis:

this alude a "este objeto" y es necesario cuando un método recibe un parámetro con el mismo nombre que un atributo del objeto. En ese caso, al anteponer el this.atributo sabemos que nos referimos al atributo, mientras que si no lleva this nos referiríamos al parámetro.

En un método como getNombre() da igual usar return nombre que return this.nombre, ya que ambas cosas resultan equivalentes.

Normalmente el this se usa en casos en los que puede haber conflictos de nombres, para dejar claro cuándo nos estamos refiriendo a un atributo, aunque algunos programadores usan el this incluso sin haber conflicto de nombres para remarcar que se trata de un atributo.

Saludos

luis sanz

  • Sin experiencia
  • *
  • Mensajes: 49
    • Ver Perfil
Excelente amigo muchas 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".