Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cuál es la función de la interfaz serializable?

¿Cuál es la función de la interfaz serializable?

Este artículo se ejecutó en Windows 7 y una computadora Dell G3.

El papel de la interfaz serializable:

La interfaz serializable es una interfaz que implementa su función de serialización. Las clases que implementan la interfaz java.io.Serializable son serializables. Una clase que no implemente esta interfaz no podrá serializar ni deserializar ninguno de sus estados.

Comprensión personal:

Este tipo de introducción es muy poco realista, así que leí algunos blogs y me llamó la atención el blog de una joven. Ella lo entendió de esta manera.

El proceso de serialización es un proceso de "congelación", que congela un objeto, lo almacena y luego lo descongela cuando se necesita nuevamente.

Lo que consideramos no serializado en realidad se realiza mediante tipos de datos específicos que nos ayudan a serializar las diferentes variables que declaramos.

Si alguien abre el código fuente de la interfaz serializable, encontrará que la interfaz es en realidad una interfaz vacía. Entonces, ¿quién implementó esta operación de serialización? De hecho, si observa la anotación de esta interfaz, encontrará que cuando permitimos que una clase de entidad implemente la interfaz serializable, en realidad le estamos diciendo a la JVM que la clase se puede serializar y se puede serializar a través del mecanismo de serialización predeterminado.

El papel de la serialización:

* La serialización es el proceso de convertir el estado de un objeto a un formato que pueda mantenerse o transmitirse. Lo opuesto a la serialización es la deserialización, que convierte una secuencia en un objeto. Estos dos procesos combinados facilitan el almacenamiento y la transferencia de datos.

1. Guarde el objeto en el medio de almacenamiento para que la copia pueda reconstruirse rápidamente la próxima vez que se utilice. Es decir, cuando la secuencia de bits resultante se vuelve a leer de acuerdo con el formato de serialización, se puede usar para crear una semántica idéntica

Pregunta: cuando no implemento la serialización, aún puedo guardar Ingrese mi sqlserver o base de datos MySQL u Oracle. ¿Por qué debe serializarse antes de poder almacenarse?

2. Transmisión de datos conveniente, especialmente en el caso de llamadas remotas

Implementar java El propósito de la interfaz .Serializable es para serialización. La interfaz Serializable se usa para la serialización y serialVersionUID se usa para indicar la compatibilidad entre diferentes versiones de la clase que implementa la serialización. Si modifica la clase, cambie este valor.

De lo contrario, se producirá un error al restaurar una clase que se serializó previamente utilizando una versión anterior.

Durante la implementación, si la herramienta que utiliza emite una advertencia, le indicará que puede generar automáticamente un serialVersionUID largo final estático privado = 1L para garantizar la compatibilidad de la versión de clase durante la deserialización. Es mejor agregar un serialVersionUID largo final estático privado a cada clase que se va a serializar.

Descripción de serialVersionUID

Función serialVersionUID: la serialización puede mantener la compatibilidad de la versión, es decir, la deserialización puede mantener la unicidad del objeto cuando se actualiza la versión.

Puede escribir uno directamente y generará uno para usted en Eclipse. Hay dos formas de generarlo: uno es el 1L predeterminado, por ejemplo:

final estático privado. long serialVersionUID = 1L; uno es generar un campo hash de 64 bits basado en el nombre de la clase, el nombre de la interfaz, el método del miembro y el atributo, por ejemplo

privado estático final long serialVersionUID = 1L; un campo hash de 64 bits basado en el nombre de la clase, el nombre de la interfaz y los campos hash de 64 bits generados por los métodos y propiedades de los miembros.

Campo hash, por ejemplo:

privado estático final largo serialVersionUID = -8940196742313994740L;