Alguien sabe lo que es la serialización??

lauryn_guti17
04 de Enero del 2005
Buenas!!!

Tengo un problema... necesito hacer para una práctica una série de aplicaciones y éstas al cerrar el sistema, tienen que quedar guardadas en memoria, es decir, por SERIALIZACIÓN!!

Alguien sabe como se hace eso??
Muchas gracias de antemano

chuidiang
04 de Enero del 2005
Hola:

El tema es más fácil de lo que parece.

Una clase es Serializable si implementa la interface Serializable. Como esta interface no tiene ningun metodo, basta poner "implements Serializable" y no hacer nada más. Cualquier objeto Serializable, sabe escribirse o leerse de un Stream.

Por ejemplo

class A implements Serializable
{
public int a;
publid void metodo();
...
}

Esa clase (si todos sus atributos son primitivos o serializables), es serializable.

Para guardarla en un fichero, basta crear un ObjectOutputStream, que creas pasándole un FileOutputStream. Algo como esto

ObjectOuputStream salida = new ObjectOuputStream (new FileOutputStream (new File ("el fichero")));

salida.writeObject (unObjetoSerializable);

Para leer es lo mismo, pero con InputStreams.

Se bueno.