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

avec Java Discussion :

constructeur de classe abstraite


Sujet :

avec Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut constructeur de classe abstraite
    Bonjour,

    j'ai trouvé sur le net un exemple de code où apparaît une classe abstraite dont voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    private String titre, genre;
      private int annee;
     
      public document(){
        titre="";
        genre="";
        annee=0;
      }
      /////////////
      public String getTitre(){ return titre;}
      public String getGenre(){return genre;}
      public int getAnnee(){return annee;}
      abstract String getCode();
      abstract int getNbexemplaires();
     ////////////////
      public void setTitre(String t){ titre=t;}
      public void setGenre(String g){genre=g;}
      public void setAnnee(int a){annee=a;}
      abstract void setNbexemplaires(int n);
      abstract void setCode(int c);
    }
    Ce qui m'interpelle c'est le constructeur: il n'a pas de paramètres mais il y a des variables, et je ne sais pas pourquoi il est fait comme ça. Au moment d'instantier un objet d'une classe fille ("book") que va-t-il se passer?
    Voici le constructeur de la classe "book":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public book(){
        auteur="";
        codeBook="";
        nbExemplaires=0;
      }
    Merci d'avance

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Qu'est ce que tu ne comprends pas exactement?... je ne vois aucun problème avec le code que tu donnes (si ce n'est qu'il ne respecte pas les règles de nommage en java)
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre actif Avatar de aperrin
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 221
    Points : 272
    Points
    272
    Par défaut
    Tu va obtenir un Book avec les variables suivantes instanciées comme suit :
    titre="";
    genre="";
    annee=0;
    auteur="";
    codeBook="";
    nbExemplaires=0;

    de plus tu aura acces au méthode définit dans Document. Par contre charge à toi de redefinir dans la classe Book les méthodes abstraites de la classe Document.
    En essayant continuellement, on finit par réussir. Donc plus ça rate, plus on a de chances que ça marche !

  4. #4
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    salut,
    le constructeur document :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public document(){
        titre="";
        genre="";
        annee=0;
      }
    initialise les attributs de cette classe seulement. C'est pour cela qu'il n'a pas de paramètre, il faudra passer par les setters pour donner les valeur désirées aux atributs (setTitre, setGenre,...).

    Ensuite il faudrai plus de code pour voir les héritages, mais tel que tu l as écrit la classe Book n'a pas de lien avec document...
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par CyberChouan Voir le message
    Qu'est ce que tu ne comprends pas exactement?... je ne vois aucun problème avec le code que tu donnes (si ce n'est qu'il ne respecte pas les règles de nommage en java)
    Bonjour,

    la question à ma réponse a été donnée par aperrin et jojodu31, merci à vous deux

    Par contre charge à toi de redefinir dans la classe Book les méthodes abstraites de la classe Document.
    C'est fait, merci.

    Ensuite il faudrai plus de code pour voir les héritages, mais tel que tu l as écrit la classe Book n'a pas de lien avec document...
    Je n'ai pas voulu mettre toute la classe car ma question concernait le constructeur. Mais la classe book hérite des méthodes de la classe document.

    Merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. constructeur pour classe abstraite
    Par manguigs dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 28/06/2013, 23h32
  2. constructeur de classe abstraite
    Par totoche dans le forum Langage
    Réponses: 1
    Dernier message: 26/02/2009, 12h06
  3. Réponses: 14
    Dernier message: 17/11/2006, 20h17
  4. Classe abstraite et constructeurs
    Par koala01 dans le forum C++
    Réponses: 6
    Dernier message: 21/08/2006, 02h00
  5. pb constructeurs classes dérivant classe abstraite
    Par Cornell dans le forum Langage
    Réponses: 2
    Dernier message: 10/02/2003, 20h02

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