IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

serialization et héritage


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    446
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 446
    Par défaut serialization et héritage
    bonsoir
    j'ai 2 questions les amis:
    on a ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    class classB extends classA implements Serializable
    {.....}
    1)est ce qu'on peut implémenter l'interface serializable au niveau de la classB sans l'implémenter au niveau de classA si oui dans quels cas est ce possible?
    2)si on veut créer une instance de classB;quels sont les differents types de variable pouvant désigner un tel objet?pourqoi?

    merci pour l'aide

  2. #2
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Citation Envoyé par gentelmand Voir le message
    bonsoir
    j'ai 2 questions les amis:
    on a ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    class classB extends classA implements Serializable
    {.....}
    1)est ce qu'on peut implémenter la classB sans l'implémenter au niveau de classA si oui dans quels cas est ce possible?
    Non. Cela ne veut rien dire.
    Citation Envoyé par gentelmand Voir le message
    2)si on veut créer une instance de classB;quels sont les differents types de variable pouvant désigner un tel objet?pourqoi?

    merci pour l'aide
    Les types de variables pouvant désigner cet objet sont classB, classA, Object, et Serializable.

    classB, parce que la classe de l'objet est classB ; classA et Object, parce que classB hérite de ces deux classes. Et Serializable, parce que classB implémentes Serializable.

  3. #3
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Citation Envoyé par gifffftane Voir le message
    Non. Cela ne veut rien dire.
    Sauf si j'ai mal compris la question, il est tout à fait possible que ClassA n'implémente pas Serializable.

    Par contre, l'intérêt peut s'avérer assez limité mais si on n'a pas la main sur ClassA ca permet au moins de s'épargner l'écriture à la main de la sérialisation / désérialisation pour les attributs de ClassB.
    Pour les attributs de ClassA, ils ne sont pas sérialisés et à la désérialisation le constructeur de ClassA est appelé (mais il n'est pas interdit de surcharger les méthodes writeObject et readObject en faisant appel à defaultWriteObject et defaultReadObject et en sérialisant manuellement les attributs de la classe mère via des writeXXX / readXXX).
    La même technique peut être utilisée dans le cas d'un attribut non sérialisable qu'on marquerait transient et qu'on sérialiserait manuellement.

Discussions similaires

  1. [Postgresql]Héritage
    Par lheureuxaurelie dans le forum PostgreSQL
    Réponses: 13
    Dernier message: 02/10/2008, 09h18
  2. [XML Schemas]héritage multiple
    Par nicolas_jf dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 10/06/2003, 12h55
  3. [Postgres] Héritage + Clés
    Par k-reen dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 21/05/2003, 16h37
  4. Problème de serialization
    Par bruno270579 dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 30/04/2003, 18h11
  5. Héritage entre Forms
    Par BarBal dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo