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 :

probleme avec les constructeur en java


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut probleme avec les constructeur en java
    alors j'ai une classe Date qui contient un constructeur avec les arguments jour ,mois,anne) des int
    j'ai cree une autre classe Personne-dans le meme package quela classe Date-qui contient un constructeur avec les argumentsnom,prenom,datenaissance)
    dans l'argument datenaissance j'aimerai utiliser le constructeur Date
    mon but cé de calculer l'age de la personne et je ne sait pas comment faire appel a la variable anne pour faire la soustraction entre l'anne actuel et l'anne de naissance
    vous pouvez me donner l'ecriture exacte svp
    merci

  2. #2
    Membre éprouvé
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Par défaut
    Une notion importante de l'orienté objet, c'est les getteurs et setteurs. Ce sont des méthodes toutes simples, qui permettent une utilisation propre des variables d'une classe. Ainsi, imagines ta classe Date :
    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
    public  class Date {
         private int annee = 0;
     
         public Date(int annee) {
            this.annee = annee;
             //tu fais ce que tu veux
         }
     
         //Méthode set, ou 'placer' en français
        public void setAnnee(int maNouvelleAnnee) {
          this.annee = maNouvelleAnnee;
          //je remplace donc l'ancienne valeur de annee par la valeur de maNouvelleAnnee
        }
     
        //Méthode get, ou obtenir en français
        public int getAnnee() {
         //cette méthode va donner à qui le veux la valeur actuelle de annee
          return annee;
        }
    }
    Une fois ta classe ainsi défini, tu peux utiliser ces méthodes sur une instance de classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Date maDate = new Date(1991);
    System.out.println("Date de naissance : " + maDate.getAnnee());
    //Affiche "Date de naissance : 1991"
    maDate.setAnnee(1988);
    //Change la valeur de maDate.annee de manière 'propre' et la met a 1988
    System.out.println("Date de naissance : " + maDate.getAnnee());
    //Affiche "Date de naissance : 1988"
    Voila voila . Ai-je été assez clair ? Bonne chance, et courage, c'est selon moi une partie des plus complexe de Java, l'orienté objet.

  3. #3
    Membre éclairé
    Avatar de Voyvode
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 476
    Par défaut
    Tu m'as pris de vitesse Janitrix !

    J'aimerais ajouter que c'est la base de ce qu'on appelle pompeusement en Orienté Objet l'encapsulation.
    Le principe c'est que les champs de l'objet ne peuvent être lus ou modifiés que par l'intermédiaire de ses méthodes. Derrière cette contrainte, on gagne en sécurité et ça permet d'avoir un plus grand contrôle sur l'objet et ses données.

    D'ailleurs, existe-t-il un cours sur developpez.com qui parle de l'orienté objet ?

  4. #4
    Membre éprouvé
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Par défaut
    Trouve ton bonheur. Il n'y a rien qui ne concerne QUE la POO mais il y en a plusieurs qui en parle donc c'est pareille Bonne chance.

  5. #5
    Membre éclairé
    Avatar de Voyvode
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 476
    Par défaut
    Ok merci. Me concernant j'en ai plus trop besoin (bon sang, 4 ans déjà...) mais comme il parait que c'est une des plus grosses barrières pour l'apprentissage de Java, je me disais que ça pourrait servir.

  6. #6
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut
    ce que je veux cé calaculer l'age ds la classe personne à partir de l'anne que l'utilisateur va saisir et l'anne actuel
    mais je ne sais pas comment mettre la valeur de l'anne saisie ds la variable anne pour faire lar soustraction suivante:
    age=d.getyear()-anne
    tel que d vient de (java.util.Date) Date d=new Date()
    cela je veut le faire ds une méthode getage() ds la classe Personne

  7. #7
    Membre éprouvé
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Par défaut
    Ah d'accord je n'avais pas compris ça. Bin ce cas, . Tu dois certainement trouver ton bonheur. Et, un lien à ne jamais perdre, celui de l'api documentation Java, qui devrait etre le premier réflexe de tout bon développeur Java . Bonne chance.

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

Discussions similaires

  1. [débutant]probleme avec les constructeurs
    Par am@123 dans le forum Services Web
    Réponses: 9
    Dernier message: 18/03/2008, 13h33
  2. 3D en Java. Problème avec les textures !
    Par dotrungtien dans le forum Moteurs 3D
    Réponses: 4
    Dernier message: 07/04/2006, 19h43
  3. PROBLEME AVEC LES REQUETES IS NULL / NOT EXISTS
    Par sylvaine dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/06/2004, 13h26
  4. probleme avec les processus
    Par saidi dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/02/2003, 00h18

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