Projet hashtable !!
Résolu/Fermé
alaa16
Messages postés
11
Date d'inscription
samedi 13 septembre 2008
Statut
Membre
Dernière intervention
13 avril 2010
-
20 sept. 2008 à 17:35
alaa16 Messages postés 11 Date d'inscription samedi 13 septembre 2008 Statut Membre Dernière intervention 13 avril 2010 - 21 sept. 2008 à 14:28
alaa16 Messages postés 11 Date d'inscription samedi 13 septembre 2008 Statut Membre Dernière intervention 13 avril 2010 - 21 sept. 2008 à 14:28
A voir également:
- Projet hashtable !!
- Gantt projet - Télécharger - Gestion de projets
- Musique projet x - Forum Musique / Radio / Clip
- Film projet x a telecharger gratuitement - Télécharger - Outils professionnels
- Projet vba exemple ✓ - Forum VB / VBA
- Projet de creation d'une chaine de television pdf - Forum TV & Vidéo
4 réponses
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
328
20 sept. 2008 à 21:54
20 sept. 2008 à 21:54
Bonsoir,
Tes messages d'erreur sont assez explicites :
cannot find symbol constructor stgr() : Le compilateur ne trouve pas le constructeur sans argument. En effet, comme tu as défini ton propre constructeur, le compilateur ne rajoute pas le constructeur par défaut, il faut que tu l'explicites manuellement : rajoute simplement public stgr(){}
Ce constructeur par défaut n'est pas utilisé explicitement dans ton code, mais il semblerait que la machine virtuelle doit l'utiliser (sans doute que lorsque tu fais un cast comme dans ta méthode public void ajouter(stgr s), java doit créer une nouvelle instance de stgr, et utilise donc le constructeur sans argument).
cannot find symbol constructor stgr(java.lang.String,java.lang.String,java.lang.String) : Bah oui, tu crées un constructeur prenant un int et deux strings en argument, et tu essaies d'instancier un stgr avec 3 strings... Forcément ça casse.
Le remède :
- soit tu crées un Integer avant l'appel au constructeur (et tu modifies ton constructeur pour qu'il prenne un Integer au lieu d'un int). Gaffe au NumberFormatException...
- soit tu crées un Integer avant l'appel au constructeur, et tu lui passes tonInteger.intValue(); en premier paramètre. Gaffe au NumberFormatException aussi...
- soit tu modifies ton constructeur pour prendre 3 strings et pas de int.
- ...
Cordialement.
Tes messages d'erreur sont assez explicites :
cannot find symbol constructor stgr() : Le compilateur ne trouve pas le constructeur sans argument. En effet, comme tu as défini ton propre constructeur, le compilateur ne rajoute pas le constructeur par défaut, il faut que tu l'explicites manuellement : rajoute simplement public stgr(){}
Ce constructeur par défaut n'est pas utilisé explicitement dans ton code, mais il semblerait que la machine virtuelle doit l'utiliser (sans doute que lorsque tu fais un cast comme dans ta méthode public void ajouter(stgr s), java doit créer une nouvelle instance de stgr, et utilise donc le constructeur sans argument).
cannot find symbol constructor stgr(java.lang.String,java.lang.String,java.lang.String) : Bah oui, tu crées un constructeur prenant un int et deux strings en argument, et tu essaies d'instancier un stgr avec 3 strings... Forcément ça casse.
Le remède :
- soit tu crées un Integer avant l'appel au constructeur (et tu modifies ton constructeur pour qu'il prenne un Integer au lieu d'un int). Gaffe au NumberFormatException...
- soit tu crées un Integer avant l'appel au constructeur, et tu lui passes tonInteger.intValue(); en premier paramètre. Gaffe au NumberFormatException aussi...
- soit tu modifies ton constructeur pour prendre 3 strings et pas de int.
- ...
Cordialement.
alaa16
Messages postés
11
Date d'inscription
samedi 13 septembre 2008
Statut
Membre
Dernière intervention
13 avril 2010
20 sept. 2008 à 23:24
20 sept. 2008 à 23:24
j'ai encoe des problemes avec ce programme voila les modification que j'ai fait mais encore d'erreures:
classe stagiaire ====>
import java.util.Hashtable;
import javax.swing.*;
public class stgr{
private int matricule;
private String nom;
private String prenom;
public static Hashtable h = new Hashtable();
public stgr{}
public stgr(String mat , String n , String p){
matricule=m;
nom=n;
prenom=p;
}
public int getmatricule(){
return matricule;
}
public String getnom(){
return nom;
}
public String getprenom(){
return prenom;
}
public void setmatricule(int mat){
matricule=mat;
}
public void setnom(String no){
nom=no;
}
public void setprenom(String pr){
prenom=pr;
}
public String tostring1(){
return ("matricule " + matricule + "nom :" + nom + "prenom" + prenom );
}
public void ajouter(int matricule,String nom,String prenom){
stgr st = new stgr(matricule,nom,prenom);
h.put(matricule,st);
}
}
classe d'interface ====>
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class p1 extends stgr implements ActionListener {
private JFrame jf;
public static JLabel l1;
private JLabel l2,l3;
private JButton b;
private JTextField tf1,tf2,tf3;
public p1(String titre){
jf=new JFrame(titre);
jf.setLayout(new GridLayout(4,2));
jf.setSize(400,345);
l1=new JLabel("Matricule");
l2=new JLabel("Nom");
l3=new JLabel("Prenom");
tf1=new JTextField();
tf2=new JTextField();
tf3=new JTextField();
b=new JButton("ajouter");
b.addActionListener(this);
jf.add(l1); jf.add(tf1);
jf.add(l2);jf.add(tf2);
jf.add(l3);jf.add(tf3);
jf.add(b);
jf.setVisible(true);
}
public void actionPerformed(ActionEvent e){
ajouter((int) tf1.getText(), (String) tf2.getText(), (String) tf3.getText()) ;
}
public static void main (String[] args) {
new p1("fenetre");
}
}
quelqu'un peut m'aider !!!
classe stagiaire ====>
import java.util.Hashtable;
import javax.swing.*;
public class stgr{
private int matricule;
private String nom;
private String prenom;
public static Hashtable h = new Hashtable();
public stgr{}
public stgr(String mat , String n , String p){
matricule=m;
nom=n;
prenom=p;
}
public int getmatricule(){
return matricule;
}
public String getnom(){
return nom;
}
public String getprenom(){
return prenom;
}
public void setmatricule(int mat){
matricule=mat;
}
public void setnom(String no){
nom=no;
}
public void setprenom(String pr){
prenom=pr;
}
public String tostring1(){
return ("matricule " + matricule + "nom :" + nom + "prenom" + prenom );
}
public void ajouter(int matricule,String nom,String prenom){
stgr st = new stgr(matricule,nom,prenom);
h.put(matricule,st);
}
}
classe d'interface ====>
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class p1 extends stgr implements ActionListener {
private JFrame jf;
public static JLabel l1;
private JLabel l2,l3;
private JButton b;
private JTextField tf1,tf2,tf3;
public p1(String titre){
jf=new JFrame(titre);
jf.setLayout(new GridLayout(4,2));
jf.setSize(400,345);
l1=new JLabel("Matricule");
l2=new JLabel("Nom");
l3=new JLabel("Prenom");
tf1=new JTextField();
tf2=new JTextField();
tf3=new JTextField();
b=new JButton("ajouter");
b.addActionListener(this);
jf.add(l1); jf.add(tf1);
jf.add(l2);jf.add(tf2);
jf.add(l3);jf.add(tf3);
jf.add(b);
jf.setVisible(true);
}
public void actionPerformed(ActionEvent e){
ajouter((int) tf1.getText(), (String) tf2.getText(), (String) tf3.getText()) ;
}
public static void main (String[] args) {
new p1("fenetre");
}
}
quelqu'un peut m'aider !!!
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
328
20 sept. 2008 à 23:38
20 sept. 2008 à 23:38
Re,
C'est pas public stgr{} mais public stgr(){} qu'il faut écrire.
Ensuite modifie ça :
public void actionPerformed(ActionEvent e){
ajouter((int) tf1.getText(), (String) tf2.getText(), (String) tf3.getText()) ;
}
par ça :
public void actionPerformed(ActionEvent e){
Integer tf1Value = new Integer(tf1.getText());
ajouter(tf1Value.intValue(), tf2.getText(), tf3.getText()) ;
}
Cordialement.
C'est pas public stgr{} mais public stgr(){} qu'il faut écrire.
Ensuite modifie ça :
public void actionPerformed(ActionEvent e){
ajouter((int) tf1.getText(), (String) tf2.getText(), (String) tf3.getText()) ;
}
par ça :
public void actionPerformed(ActionEvent e){
Integer tf1Value = new Integer(tf1.getText());
ajouter(tf1Value.intValue(), tf2.getText(), tf3.getText()) ;
}
Cordialement.
alaa16
Messages postés
11
Date d'inscription
samedi 13 septembre 2008
Statut
Membre
Dernière intervention
13 avril 2010
21 sept. 2008 à 14:28
21 sept. 2008 à 14:28
Je vous remercie marco!
le probleme a été résolu.
mes salutations !
le probleme a été résolu.
mes salutations !