Maison > Java > javaDidacticiel > Que signifie sérialisable en Java ?

Que signifie sérialisable en Java ?

下次还敢
Libérer: 2024-05-08 07:33:16
original
562 Les gens l'ont consulté

Sérialisable en Java est une interface utilisée pour conserver l'état des objets et transmettre des objets sur le réseau. Cela nécessite que la classe d'implémentation fournisse des méthodes getter/setter et des constructeurs sans argument. Utilisez ObjectOutputStream.writeObject() pour la sérialisation et ObjectInputStream.readObject() pour la désérialisation.

Que signifie sérialisable en Java ?

Sérialisable en Java

Qu'est-ce que sérialisable ?

En Java, Serialisable est une interface, ce qui signifie que la classe ou la classe d'implémentation de l'interface peut enregistrer l'état de l'objet dans le flux de sortie via le mécanisme de sérialisation et peut restaurer l'état de l'objet à partir du flux d'entrée via l’état du mécanisme de désérialisation.

Pourquoi utiliser Serialisable ?

L'interface sérialisable est principalement utilisée dans les scénarios suivants :

  • Persistance de l'objet : Les objets sérialisables peuvent être enregistrés dans des fichiers ou des bases de données pour conserver l'état de l'objet afin qu'il puisse être restauré ultérieurement.
  • Appel de procédure à distance (RPC) : Des objets sérialisables peuvent être transmis sur le réseau pour communiquer entre différentes instances JVM.
  • Informatique distribuée : Les objets sérialisables peuvent être dispersés sur différents serveurs pour être traités dans un système distribué.

Comment implémenter Serialisable ?

Pour implémenter l'interface Serialisable, une classe ou une interface doit :

  1. Déclarer l'implémentation de l'interface java.io.Serialised.
  2. Fournissez une méthode getter et setter privée pour chaque champ non transitoire de l'objet.
  3. Fournissez éventuellement un constructeur sans paramètre pour créer une nouvelle instance lors de la désérialisation.

Exemple :

<code class="java">public class Person implements Serializable {

    private String name;
    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}</code>
Copier après la connexion

Utilisation de Serialisable

Pour utiliser un objet sérialisable, vous pouvez le sérialiser dans le flux de sortie, puis le désérialiser à partir du flux d'entrée. Les API suivantes peuvent être utilisées :

  • Sérialisation : ObjectOutputStream#writeObject(Object)
  • Désérialisation : ObjectInputStream#readObject()

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal