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 :

Heritage entre 2 classes


Sujet :

Langage Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 2
    Par défaut Heritage entre 2 classes
    Bonjour, j'essaye de comprendre l'héritage entre les classes. J'ai essayé de faire un petit programme simple pour tester mais ça ne fonctionne pas.
    Quelqu'un peut-il me dire où sont mes erreurs dans mon programme ci-dessous ??? En vous remerciant d'avance.


    But : rentrer des données dans la classe Données (en mode graphique , suite au clic sur le bouton validez) et afficher les données par la classe Recuperation.


    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
     
    import java.io.* ;
    import java.awt.*;
    import java.awt.event.* ;
    import javax.swing.*;
     
     
     
    class Données extends JFrame implements ActionListener {
     
    	Container contenu = getContentPane () ;
    	JPanel Panneau ;
    	JLabel nom , prenom, age, profession, compte_depot, compte_joint, livret_a , vide ;
    	JTextField nom1 , prenom1, age1, profession1, compte_depot1, compte_joint1, livret_a1 ;
    	JButton validez ;
    	String nom2,prenom2, age2, profession2, compte_depot2, compte_joint2 , livret_a2 ;
     
    	public Données () {
     
    		super ("Données");
     
    		setSize (300,300);
    		setVisible (true);
    		Panneau = new JPanel ();
    		BorderLayout disposition1 = new BorderLayout () ;
    		contenu.setLayout(disposition1);
    		contenu.add(Panneau);
    		GridLayout disposition2 = new GridLayout (8,2) ;
    		Panneau.setLayout(disposition2);
    		nom = new JLabel ("NOM");
    		Panneau.add(nom);
    		nom1 = new JTextField ("");
    		Panneau.add(nom1);
    		prenom = new JLabel ("PRENOM");
    		Panneau.add(prenom);
    		prenom1 = new JTextField ("");
    		Panneau.add(prenom1);
    		age = new JLabel ("AGE");
    		Panneau.add(age);
    		age1 = new JTextField ("");
    		Panneau.add(age1);
    		profession = new JLabel ("PROFESSION");
    		Panneau.add(profession);
    		profession1 = new JTextField ("");
    		Panneau.add(profession1);
    		compte_depot = new JLabel ("COMPTE DEPOT");
    		Panneau.add(compte_depot);
    		compte_depot1 = new JTextField ("");
    		Panneau.add(compte_depot1);
    		compte_joint = new JLabel ("COMPTE JOINT");
    		Panneau.add(compte_joint);
    		compte_joint1 = new JTextField ("");
    		Panneau.add(compte_joint1);
    		livret_a = new JLabel ("LIVRET A");
    		Panneau.add(livret_a);
    		livret_a1 = new JTextField ("");
    		Panneau.add(livret_a1);
    		vide = new JLabel ("");
    		Panneau.add(vide);
    		validez = new JButton("VALIDEZ");
    		Panneau.add(validez);
    		validez.addActionListener (this);
     
    	}
     
     
    	public void actionPerformed (ActionEvent e){
    		// transformation des données JTextField en String
    		nom2 = nom1.getText();
    		prenom2 = prenom1.getText();
    		age2 = age1.getText () ;
    		profession2 = profession1.getText () ;
    		compte_depot2 = compte_depot1.getText();
    		compte_joint2 = compte_joint1.getText();
    		livret_a2 = livret_a1.getText();
     
    		new Recuperation () ;
     
    	}
     
    }
    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
    23
    24
    25
    26
    27
    28
    29
    class Recuperation {
     
    	String nom3 = "nom3";
    	String prenom3, age3, profession3, compte_depot3, compte_joint3 , livret_a3 ;
    	Données DD ;
     
    	public Recuperation () {
     
    		affiche() ;
     
    	}
     
    // recupération des données de la classe Données et affichage de celles - ci (NE FONCTIONNE PAS)
     
    	public void affiche (){
     
     
    		nom3 = DD.nom2 ;
    		prenom3 = DD.prenom2 ;
    		age3 = DD.age2 ;
    		profession3 = DD.profession2 ;
    		compte_depot3 = DD.compte_depot2 ;
    		compte_joint3 = DD.compte_joint2 ;
    		livret_a3 = DD.livret_a2;
     
    		System.out.println (nom3 + " " + prenom3 + " "+ age3 + " " +profession3 + " " + compte_depot3 +" "+ compte_joint3 + " "+ livret_a3);
    	}
     
    	}
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public class compte1 {
    public static void main (String args []){
     
    new Données() ;
     
    }
    }

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Ton problème, c'est que ta classe "récupération" ne reçois jamais l'instance de Données sur laquelle elle doit travailler. (Et au fait, rien à voir avec l'héritage). tu peux, par exemple, passer l'instance de donnée au constructeur de récupération, pour qu'il le stocke dans le champ 'DD'

Discussions similaires

  1. Notion d'heritage entre 2 classes
    Par themacprod dans le forum C++
    Réponses: 1
    Dernier message: 22/05/2008, 13h19
  2. probleme d'heritage entre 2 classes
    Par Shrine dans le forum C++
    Réponses: 6
    Dernier message: 11/08/2007, 23h27
  3. Réponses: 5
    Dernier message: 17/08/2005, 13h40
  4. Pb accès entre 2 classes static
    Par d.w.d dans le forum C++
    Réponses: 5
    Dernier message: 23/02/2005, 20h05
  5. [heritage] etendre une classe interne en dehors du package
    Par ChristopheH dans le forum Langage
    Réponses: 2
    Dernier message: 11/10/2004, 15h15

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