Introduction
La sérialisation en Java est comme emballer une tasse de café personnalisée pour l’emporter. Elle vous permet de convertir un objet en un flux de bytes, de le stocker dans un fichier, puis de le restaurer plus tard. C’est un moyen puissant de sauvegarder et de transférer des objets.
Sérialiser un Objet
La sérialisation d’un objet est comme préparer une tasse de café pour l’emporter. Voici comment vous pouvez le faire :
Créer une Classe Sérialisable
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import java.io.Serializable;
public class Cafe implements Serializable {
private String type;
private int sucre;
public Cafe(String type, int sucre) {
this.type = type;
this.sucre = sucre;
}
@Override
public String toString() {
return "Un " + type + " avec " + sucre + " sucres.";
}
}
|
Sérialiser l’Object
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
public class PreparerCafe {
public static void main(String[] args) {
Cafe monCafe = new Cafe("Espresso", 2);
try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("cafe.ser"))) {
oos.writeObject(monCafe);
System.out.println("Café préparé !");
} catch (Exception e) {
System.out.println("Erreur lors de la préparation du café : " + e.getMessage());
}
}
}
|
1
2
|
$ java PreparerCafe
Café préparé !
|
Désérialiser un Objet
La désérialisation d’un objet est comme ouvrir la tasse de café emballée et la savourer. Voici comment vous pouvez le faire :
1
2
3
4
5
6
7
8
9
10
11
12
13
|
import java.io.FileInputStream;
import java.io.ObjectInputStream;
public class SavourerCafe {
public static void main(String[] args) {
try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream("cafe.ser"))) {
Cafe monCafe = (Cafe) ois.readObject();
System.out.println("Savoureux : " + monCafe);
} catch (Exception e) {
System.out.println("Erreur lors de la dégustation du café : " + e.getMessage());
}
}
}
|
1
2
|
$ java SavourerCafe
Savoureux : Un Espresso avec 2 sucres.
|
Conclusion
La sérialisation en Java vous permet de convertir les objets en un flux de bytes et de les restaurer à nouveau. C’est comme emballer et déballer une tasse de café personnalisée. Utilisez cette technique pour sauvegarder et transférer des objets, et votre code sera aussi satisfaisant qu’une tasse de votre café préféré.