ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Descripción del código Hashcode


Enviado por   •  11 de Marzo de 2025  •  Informe  •  1.012 Palabras (5 Páginas)  •  33 Visitas

Página 1 de 5

Marian Vanesa Munevar Castellanos - 1023164497[pic 1]

[1] 

[pic 2][pic 3][pic 4]

Para empezar, se crea un paquete denominado “domain”, el cual esta engloba a la clase “Empleado”. Se usa el “Objects”, ya que se van a comparar el nombre y el sueldo.

[pic 5]

En el “public class Empleado” se esta nombrando Empleado  como una clase que es publica, lo que indica que se puede acceder desde cualquier otra clase.

En la linea 6 se define el nombre como un dato tipo String (que indica que es un objeto o una palabra), y en la linea 7 el sueldo como un dato tipo double (que indica que es un numero decimal). Los dos estan de manera protected, eso quiere decir que unicamente se usan en la misma clase y paquete.

En la linea 9 se crea el metodo constructor, el cual tiene como funcion ejecutar la instancia (atributos del objeto).

El this hace referencia al nombre y al sueldo para poderlos distinguirlos.

[pic 6]

En la linea 14 se crea el metodo set y get, pero primero se crea una clase String denominada obtenerDetaller. Dentro de esta clase, el return tiene como finalidad dar un resultado, en este caso son el nombre y el sueldo.

[pic 7]

El public quiere decir que se puede utilizar en cualquier clase y el String es el dato que se le establecio al nombre.

En la linea 18 el get tiene como funcion traer o llamar los datos de la variable nombre. En la linea 22 el void es para que el resultado se quede de manera estatica, es decir que sea unico y que no se genere más el set es para aceptar y enviar los datos de la variable entre clases. Por eso, se nombra como  

this.nombre = nombre; (lo que indica que como resultado se obtiene el nombre).

[pic 8]

De la misma manera ocurre con el sueldo. En la linea 26 se nombra como public double, lo que quiere decir que se puede usar en cualqueir otra clase, ademas, es un dato numero decimal. El get en la linea 26 es para llamar y traer los datos de la variable sueldo, mienntras que el set en la linea 30 es para aceptar y enviar los datos de sueldo entre clases. El void es para no retonar el resultado de set.

[pic 9]

Al escribir el metodo toString, automaticamente sale con el @Override, el cual es muy util porque ayudar a que se garantice que el codigo este sobreescrito correctamente. El toString permite retonar el resultado de lo que esta contenido en Empleado.

[pic 10]

El Hashcode es un codigo numerico, el cual devuelve un numero entero y sirve como identificador, tambien para coleccionar,  organizar y acceder rapidamente a los objetos.

El Hash en este caso en la linea 41 se declara un numero entero 3 (se usan numeros primos). En la linea 42 se realiza una multiplicacion con el numero 79 sumado por  Objects.hashCode(this.nombre); -> (obtiene el codigo hash del nombre)

[pic 11]

En la linea 43, el sueldo al denominarse double, se utiliza el dato tipo Long. En este caso se realiza la operación XOR ^ de (Double.doubleToLongBits(this.sueldo) respecto a esta misma desplazados a 32 bits hacia la derecha (>>> 32). El resultado se convertira en entero y se sumara con el 79 y despues se multiplicara con el hash. Finalmente con el return hash; devolvera un resultado que identifique a nombre y a sueldo.

[pic 12]

El equals tiene como objetivo comaparar si dos objetos son equivalentes a nivel de contenido, no a nivel de referencia de memoria. Puede verificar si los atributos de dos instancias de ina clase son iguales o no.

...

Descargar como (para miembros actualizados) txt (6 Kb) pdf (389 Kb) docx (431 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com