laurent2403
Messages postés80Date d'inscriptionjeudi 11 novembre 2010StatutMembreDernière intervention23 février 2020
-
14 août 2012 à 22:24
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020
-
4 sept. 2012 à 09:04
Bonjour
j'ai un petit soucis je n'arrive pas a enregistrer mes objets ça me met toujours une exception,quelqu’un pourrait il me dire ce qui ne va pas dans mon code svp!
merci beaucoup!
ObjectInputStream ois;
ObjectOutputStream oos;
try {
oos = new ObjectOutputStream(
new BufferedOutputStream(
new FileOutputStream(
new File("game.txt"))));
//Nous allons écrire chaque objet Game dans le fichier
oos.writeObject(new Produit("Assassin Creed", "Aventure",45,
45.69));
///java.io.NotSerializableException: rec_objet.Produit
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeObject(Unknown Source)
at rec_objet.Enregistre.main(Enregistre.java:24)///
votre class Produit ainsi que ses nested classes doivent implémenter l'interface java.io.Serializable . il n'y a pas de méthode à définir, ajoutez juste:
implements Serializable
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 16 août 2012 à 08:49
Salut,
Tu n'enregistreras rien de cette manière. Pour enregistrer un objet, il faut que la classe dont il est issu implémenté sérialisable.
Dans ton cas, la classe qui implémente sérialisable ne contient rien (juste une méthode statique qui n'est pas enregistrée puisqu'elle ne dépend pas de la classe)
Dans ton cas, la classe qui implémente sérialisable ne contient rien (juste une méthode statique qui n'est pas enregistrée puisqu'elle ne dépend pas de la classe)
Dans son cas l'objet à sérialiser est une instance de les classe Produit
Donc la classe qui devra implémenter Serializable est "Produit". la première ligne de l'exception le confirme:
java.io.NotSerializableException: rec_objet.Produit
je note qu'on peut sérialiser les instances d'une classe qui ne contient ni méthode ni attribut