Herramientas de usuario

Herramientas del sitio


bloque3:overrideobject

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque3:overrideobject [17/03/2018 11:31] – [Sobrescritura de métodos de la clase Object] Fernando Valdeónbloque3:overrideobject [16/09/2024 20:53] (actual) – editor externo 127.0.0.1
Línea 1: Línea 1:
 ====== Sobrescritura de métodos de la clase Object ====== ====== Sobrescritura de métodos de la clase Object ======
-En Java la clase de la que heredan (directa o indirectamenre) todas las clases es la clase ''Object'': todas las clases heredan los métodos de esta ''Object''. Cada vez que una clase hereda un método de una superclase, se tiene la oportunidad de **sobrescribir** el funcionamiento del método.  +En Java la clase de la que heredan (directa o indirectamente) todas las clases es la clase ''Object'': todas las clases heredan los métodos de esta ''Object''. Cada vez que una clase hereda un método de una superclase, se tiene la oportunidad de **sobrescribir** el funcionamiento del método.  
  
 La sobrescritura de métodos heredados se usa para definir el comportamiento específico de un método que  tiene un funcionamiento demasiado general en una superclase. Esto se denomina ''Override''. La sobrescritura de métodos heredados se usa para definir el comportamiento específico de un método que  tiene un funcionamiento demasiado general en una superclase. Esto se denomina ''Override''.
Línea 32: Línea 32:
 ===== Generar métodos desde Eclipse ===== ===== Generar métodos desde Eclipse =====
 {{ :bloque3:sourcemenueclipse.png?250|}} {{ :bloque3:sourcemenueclipse.png?250|}}
-Eclipse ofrece la posibilidad de generar de forma automática estos algunos métodos de la clase Object.+Los IDEs ofrecen la posibilidad de generar de forma automática algunos métodos de la clase Object.
  
 Desde la pestaña ''Source'' del menu, o haciendo clic derecho en el editor de texto -> ''Source'' accedemos al siguiente menu: Desde la pestaña ''Source'' del menu, o haciendo clic derecho en el editor de texto -> ''Source'' accedemos al siguiente menu:
  
-Pulsando sobre la generación de esos métodos, eclipse nos ayuda a generarlos. El método ''toString()'' crea un String utilizando el valor de todos los atributos. Podemos modificarlo si queremos mostrar menos, o dar otro formato.+Pulsando sobre la generación de esos métodos, eclipse nos ayuda a generarlos.  
 + 
 +Por ejemplo, la implementación del método ''toString()'' devuelve un String utilizando el valor de todos los atributos. Podemos modificarlo si queremos mostrar menos, o dar otro formato.
  
 ---- ----
Línea 80: Línea 82:
 El método equals se usa para saber si un objeto es igual a otro, devolviendo ''true'' o ''false'' El método equals se usa para saber si un objeto es igual a otro, devolviendo ''true'' o ''false''
  
-Cuando dos objetos pertenecen a distinta clase, es fácil evaluarlo. Pero cuando dos objetos pertenecen a la misma clase, aunque sean objetos distintos, nos podría interesar establecer un criterio para indicar cuando son iguales.+Cuando dos objetos pertenecen a distinta clase, es fácil evaluarlo (nunca serán iguales). Pero cuando dos objetos pertenecen a la misma clase, aunque sean objetos distintos, nos podría interesar establecer un criterio para indicar cuando son iguales.
  
 Por ejemplo: Por ejemplo:
Línea 134: Línea 136:
  return false;  return false;
       }       }
-      Vehiculo other = (Vehiculo) obj;  //Si sus valores no son iguales +      Persona other = (Persona) obj;  //Si sus valores no son iguales 
-      if ( ! ((this.dni.equals(obj.dni)  +      if ( ! ((this.dni.equals(other.dni)  
-         && (this.nombre.equals(obj.nombre)) +         && (this.nombre.equals(other.nombre)) 
-         && (this.edad == obj.edad))){+         && (this.edad == other.edad))){
            return false;            return false;
       }       }
bloque3/overrideobject.1521286281.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)