La sérialisation est généralement utilisée dans les scénarios suivants:
1. Enregistrer l'objet en permanence et enregistrer l'objet dans le fichier local via un flux d'octet sérialisé;
2. Transférer des objets sur le réseau par sérialisation
3. Passez des objets entre les processus par sérialisation
La copie de code est la suivante:
import java.io.serializable;
Importer java.io.fileOutputStream;
Importer java.io.ioException;
Importer java.io.ObjectOutputStream;
classe publique javaserializable_fun {
/ **
* Interface java.io.Serialisable, la classe ne peut être sérialisée que si elle implémente l'excuse de la sérialisable.
* Interface java.io.Externalisable, en utilisant des outils de sérialisation et de désérialisation Java, de nombreuses tâches de stockage et de restauration d'objets peuvent être achevées automatiquement.
* L'interface Java.io.ObjectOutput, la sérialisation est évanouie, hérite de l'interface DataOutput et définit certaines méthodes, qui prend en charge la sérialisation des objets;
* Fait saillie: dans cette classe, la méthode writeObject () est la méthode la plus importante, utilisée pour la sérialisation des objets.
* Java.io.ObjectOutputStream Class, responsable de l'écriture d'objets dans le flux, de la méthode de construction: ObjectOutputStream (OutputStream out);
* Interface java.io.objectInput, sérialiser dans. Hérité de l'interface de données de données et défini certaines méthodes, il prend en charge la sérialisation des objets;
* ObjectInputStream Class, responsable de la lecture d'objets dans le flux, de la méthode de construction: ObjectInputStream (InputStream Out);
*** /
public static void main (String [] args) {
essayer
{
// Construire un objet FileOutputStream
FileOutputStream f = new FileOutputStream ("C: A.Txt");
// Construisez l'objet ObjectOutputStream
ObjectOutputStream out = new ObjectOutputStream (f);
Client client = nouveau client ("BJ", 50);
// sérialiser à l'aide de la méthode writeObject () de l'objet ObjectOutputStream
out.writeObject (client);
// Fermez l'objet ObjectOutputStream
out.close ();
// Fermez l'objet FileOutputStream
f.close ();
System.out.println ("La sérialisation est complète!");
}
Catch (ioexception e)
{
e.getStackTrace ();
}
}
}
Classe Client implémente sérialisable
{
Long SerialVersionUID privé statique statique = 1L;
nom de chaîne privé;
Âge privé;
public String getName ()
{
nom de retour;
}
public int getage ()
{
âge de retour;
}
Client public (nom de la chaîne, Int Age)
{
this.name = name;
this.age = âge;
}
public String toString ()
{
return "name =" + name + ", age =" + age;
}
}