Serialización

La Serialización es el mecanismo por el cual guardamos el estado de un objeto en un recurso no volátil como un fichero por ejemplo para luego poder volver a reconstruir este objeto, esto se denomina deserialización.

Cuando mencionamos el estado de un objeto nos referimos a las propiedades de este.

Si un objeto está referenciando a otro objeto este también debe ser serializable.

Si una de las propiedades del objeto no la queremos serializar entonces la definimos como transient.

Ejemplo de serialización:

En este ejemplo creamos un objeto de tipo Date y lo serializamos en un fichero con nombre date.ser

Ejemplo de deserialización:

En  este  otro  ejemplo  deserializamos  el  objeto  creado  y  guardado  en  el  ejemplo anterior. Para ello leemos el objeto y hacemos un casting a Date. Todos los objetos deserializados se devuelven como tipo Object, por eso es necesario el casting.