Si el objeto a serializar tiene campos que a su vez son objetos, habrá que serializarlos primero, también se utiliza la serialización para poder reconstruir el objeto serializado.
INTERFAZ SERIALIZABLE
pueden ser convertidas a secuencias de bytes y tambieén ser reconstruídas.
Para la serialización de objetos:
Clase ObjectOuputStream
Método - writeObject()
Ejemplo: flujoSalida.writeObjetct (objetoClase);
Para la deserialización de objetos:
Clase ObjectInputStream
Método - readObject()
Ejemplo: objetoClase = (Clase) flujoEntrada.readObject();
Ejemplo: objetoClase = (Clase) flujoEntrada.readObject();
EJEMPLO
Consideremos el siguiente ejemplo, crearemos tres clases: Paciente, SerializarEscribir y SerializarLeer;
La clase Paciente va a implementar la interfaz Serializable:
En la clase SerializarEscribir lo que vamos a hacer es serializar un objeto de tipo ArrayList<Paciente> y lo vamos a escribir en un archivo llamado informacion.dat, creamos una objeto de la clase ObjectOuputStream ya que dentro de esta clase tenemos el método writeObject() que sirve para serializar el objeto.
Una vez que hayamos serializado el objeto y guadado, se crea el archivo informacion.dat el cual contiene el objeto listapacientes serializado
En la clase SerializarLeer lo que vamos a hacer es deserializar un objeto de tipo ArrayList<Paciente> que esta guardado en el archivo llamado informacion.dat, creamos una objeto de la clase ObjectInputStream ya que dentro de esta clase tenemos el método readObject() que sirve para deserializar el objeto, y luego lo guardamos en un nuevo ojbeto de tipo ArrayList<Paciente>.
Nuestra salida al mandar a imprimir el objeto lista pacientes es el siguiente:
Bibliografía
No hay comentarios:
Publicar un comentario