Rechercher : dans
Par :

Java collection et héritage

Dernière réponse le 28 mai 2008 à 20:01:42 Lisa34, le 28 mai 2008 à 19:19:54 
 Signaler ce message aux modérateurs

Bonjour, voilà en ce moment je fais un petit programme en java... et je dois faire une collection d'une collection... et je voulais savoir si ma façon de le faire était bonne...
et aussi j'ai une erreur au niveau de la 2ème partie de code... en effet quand je fais =
"Trekking trekTemp = new Trekking(NoVoy, LibVoy,DateDeb,duree, nbIns, noD, Num_Niveau ,Nb_Km_Jour);"
on me dit ="The constructor Trekking(int, String, String, int, int, int, int, double) is undefined".
Par rapport à la classe trekking celle ci hérite d'une autre classe : Voyage....

Voici le code :

Statement r = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet resultR = r.executeQuery("Select * from Voyage order by NoVoyage");
resultR.beforeFirst();
while (resultR.next()){
vectTrekkingTemp = new Vector <Trekking>();
int NoVoy = resultR.getInt(1);
String LibVoy = resultR.getString(2);
String DateDeb = resultR.getString(3);
int duree = resultR.getInt(3);
int nbIns = resultR.getInt(4);
int noD = resultR.getInt(5);
Statement reqT = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet resultT = reqT.executeQuery("Select Trekking.Num_Niveau, Trekking.Nb_Km_Jour from Trekking where Trekking.NoVoyage=" +NoVoy);
resultT.beforeFirst();
while (resultT.next()){
int Num_Niveau = resultT.getInt(1);
double Nb_Km_Jour = resultT.getInt(2);
Trekking trekTemp = new Trekking(NoVoy, LibVoy,DateDeb,duree, nbIns, noD, Num_Niveau ,Nb_Km_Jour);<-- c'est ici qu'on me dit que le constructeur n'est pas défini....
vectTrekkingTemp.addElement(trekTemp);
}
}

merci d'avance pour votre aide...
Lisa34

Configuration: Windows XP
Opera 9.26

Meilleures réponses pour « java collection et héritage » dans :
Java - L'héritage Voir La notion d'héritage Le concept d'héritage est un des concepts les plus importants de la programmation orientée objet, car il conditionne irréversiblement la façon selon laquelle un code Java est écrit. L'héritage est un mécanisme permettant de...
Installer Java sous Ubuntu VoirPar défaut, Firefox n'est pas fourni avec Java. Voici comment procéder pour l'installer: Ouvrez un terminal (Menu Applications > Accessoires > Terminal) et tapez: sudo aptitude install sun-java6-jre sun-java6-plugin ou sudo aptitude install ...
[Firefox] plugin Java Jre de Sun VoirA) Les différentes variantes Java chez Sun B) Installation sous Mandriva Limited Edition 2005 ETAPE 1 ETAPE 2: Création du lien symbolique C) Installation sous debian lenny D) Installation sous ubuntu hardy heron A) Les différentes...
VBA et les collections d'objets. VoirVBA et les collections d'objets Quand plusieurs (beaucoup de) contrôles sont mis sur une feuille ou un Userform il est parfois fastidieux d'écrire du code dans chaque évènement des contrôles. Ce Tuto vous permet de traiter vos contrôles comme...
Télécharger Java Runtime Environment VoirJava Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des personnes dans le monde entier, de calculer les intérêts de votre prêt immobilier ou de visualiser des images en 3D. Ces...
Java - Constructeurs VoirLe constructeur: une méthode particulière Pour instancier une classe, c'est-à-dire créer un objet à partir d'une classe, il s'agit d'utiliser l'opérateur new. En réalité l'opérateur new, lorsqu'il est utilisé, fait appel à une méthode spéciale de...
Java - Les objets VoirLa création d'objets Un objet est une instance de classe, la création d'objets s'appelle donc l'instanciation. Cette instanciation se fait grâce à l'opérateur new suivi du nom de la classe à instancier et de parenthèses contenant les paramètres...
Les classes Java VoirLa notion d'objet Le langage Java intègre fortement le concept objet, il s'agit donc d'un langage orienté objet (LOO). Le terme langage orienté objet est plus qu'une simple appellation de plus pour désigner un type de langage, il...

1

arth, le 28 mai 2008 à 19:26:13

Bonsoir,

Pour ne pas être méchant tout est dit dans le seul message :

The constructor Trekking(int, String, String, int, int, int, int, double) is undefined

Vérifie donc dans la classe Trekking que ton constructeur appelé existe bien sinon il te faut le rajouter.
Le loup, solitaire et mystérieux.

Répondre à arth

2

Lisa34, le 28 mai 2008 à 19:28:26

Merci de ta réponse, mais le constructeur de ma classe Trekking existe (j'avais oublié de le précisé !!)
Lisa34

Répondre à Lisa34

3

arth, le 28 mai 2008 à 19:29:30

Non non je peux t'assurer que le message d'erreur ne te serait pas donné.
Le loup, solitaire et mystérieux.

Répondre à arth

4

Lisa34, le 28 mai 2008 à 19:40:21

Je viens de re-vérifier mon code.... dans ma classe Trekking il y a a bien un constructeur qui hérite de la classe Voyage, ou c'est une erreur que j'ai fais dans mon constructeur?

public Trekking(int NoV, String LibV, String DateDeb, int Dur, int NbI, int NoDest, int Num_Niv, int NbKm){
super(NoV, LibV, DateDeb, Dur, NbI, NoDest);
this.Num_Niveau=Num_Niv;
this.nb_km_jour= NbKm;
}

Répondre à Lisa34

5

arth, le 28 mai 2008 à 19:47:22

J'ai compris l'erreur, et cela vient de ton code :

tu déclares donc un constructeur en int,string,string, int, int, int, int, int.

Or lorsque tu crée ton objet Trekking :

Trekking trekTemp = new Trekking(NoVoy, LibVoy,DateDeb,duree, nbIns, noD, Num_Niveau ,Nb_Km_Jour);

A mon avis le problème viens de ta dernière variable, Nb_Km_Jour, qui est trop grande pour ne tenir que dans un entier.

Essaie plutôt de mettre en constructeur celui-là :

public Trekking(int NoV, String LibV, String DateDeb, int Dur, int NbI, int NoDest, int Num_Niv, double NbKm){
super(NoV, LibV, DateDeb, Dur, NbI, NoDest);
this.Num_Niveau=Num_Niv;
this.nb_km_jour= NbKm;
}
Le loup, solitaire et mystérieux.

Répondre à arth

6

Lisa34, le 28 mai 2008 à 20:01:02

Merci de ton aide !!!!! ça marche !!!! l'erreur venait bien de là!!!
Lisa34

Répondre à Lisa34

7

 arth, le 28 mai 2008 à 20:01:42

De rien ! :)
Le loup, solitaire et mystérieux.

Répondre à arth