Código hash como serialVersionUID

tck:

He leído en un artículo que el valor por defecto serialVersionUID proporcionada por JVM es el código hash de un objeto. Si no sobreescribir el método hashCode en una clase, ¿cómo va el código hash se calcula durante deserializatio como normalmente código hash es la dirección de memoria del objeto?

Stephen C:

He leído en un artículo que el valor por defecto serialVersionUidproporcionada por JVM es el código hash de un objeto.

Eso es incorrecto. (O bien el artículo es incorrecto o leyó mal / mal entendido él).

La versión de serie UID por defecto para una clase serializable tiene ninguna relación con el código hash.

El algoritmo para generar la defaut versión UID de serie se describe aquí:

Básicamente, se crea un hash SHA-1 del nombre de clases, modificadores, los nombres de interfaces, y las firmas de sus campos, métodos y constructores. Luego toma los primeros 8 bytes del hash y los ensambla en una long.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=234809&siteId=1
Recomendado
Clasificación