probleme pour créer objet - Java - Programmation
Marsh Posté le 27-01-2006 à 21:27:21
j'ai oublié de précisé que j'ai testé comme ceci :
Code :
|
Marsh Posté le 27-01-2006 à 22:17:12
as-tu un constructeur Carte() ? (ie, sans paramètres)
je pense que non, le constructeur dont tu disposes as besoin de 2 paramètres (Couleur et Figure)
pour instancier un objet (instanciation = déclaration, réservation espace mémoire, initialisation par appel constructeur) il te faut donc utiliser un constructeur disponible, en l'occurrence Carte(Couleur, Figure) -->
Carte carte1 = new Carte(new Couleur(), new Figure())
ou n'importe quelle instance de Couleur et/ou Figure que tu as déjà
ps: un conseil: faut revoir les bases de la POO !!!
Marsh Posté le 27-01-2006 à 22:36:08
trevor a écrit : as-tu un constructeur Carte() ? (ie, sans paramètres) |
oais il faut le savoir, car d'après toutes les doc que j'ai trouvé il parle que de 1 paramètre, de plus j'avais essayé carte carte 1 = new("coeur","7).
trevor a écrit : |
Je sais je suis pas trop doué, mais j'essaye du moins, pas facile quand tu fais ça a distance, juste avec comme cours des pdf.
en tout cas merci
Marsh Posté le 27-01-2006 à 22:36:25
Et encore : j'imagine qu'il n'est pas possible de faire new Couleur() ni new Figure() sans paramètre... Voir aussi les constructeurs de ces deux classes.
As-tu jeté un oeil aux énumérations en Java ? L'exemple bateau est justement celui d'un deck de cartes !
Couleur et Figure sont remplacées par deux énumérations, ce qui évite la lourdeur du "typesafe enum pattern" et les affres du "constant anti-pattern", mais tout cela ne te dit sans doute rien. Jete toujours un oeil sur le lien, ça devrait d'édifier.
Marsh Posté le 27-01-2006 à 22:38:43
Finalement, termine peut-être de faire marcher ton truc comme tu le pensais avant de voir les enum. C'est déjà plus avancé et il vaut mieux commencer "old school" comme tu le fais.
N.B. Tu ne pourras pas faire
Code :
|
Marsh Posté le 27-01-2006 à 22:56:53
je sais il faut que je fasse
Carte sept_Coeur = new Carte(new Couleur("Coeur" ), new Figure("7" ));
Carte sept_Carreau = new Carte(new Couleur("Carreau" ), new Figure("7" ));
Marsh Posté le 27-01-2006 à 23:11:02
sircam a écrit : Et encore : j'imagine qu'il n'est pas possible de faire new Couleur() ni new Figure() sans paramètre... Voir aussi les constructeurs de ces deux classes. |
+1
j'avais oublié de spécifier ce "détail", mais si c'est le cas, c'est dans la logique du même problème
Marsh Posté le 28-01-2006 à 00:49:45
et j'sais pas si c'est juste pour le c/c que ca a foire et si c'est reellement comme ca dans ton fichier source mais dans ton constructeur Carte(....) tu as
Code :
|
au lieu de
Code :
|
Marsh Posté le 28-01-2006 à 08:17:35
non c'est une faute de frappe, c'est bien thiscouleur=c;
maintenant j'arrive bien a compiler sauf que quand je lance le programme
j'ai le message d'erreur suivant :
Exception in thread "main" java.lang.NoClassDefFoundError: belote/java
Marsh Posté le 28-01-2006 à 09:47:00
dodo a écrit : non c'est une faute de frappe, c'est bien thiscouleur=c; |
Tu veux dire... this.couleur=c;
Marsh Posté le 28-01-2006 à 09:48:38
Pour ton autre problème : topic passage obligé débutants -> classpath.
Marsh Posté le 28-01-2006 à 12:40:37
en faite ce que je trouve bizzard dans cette erreur, c'est que je suis sous linux, et que les autres programmes que j'ai compilés fonctionnent.
Marsh Posté le 28-01-2006 à 15:48:45
Je suis vraiment trop nases, , au lieu de faire java belote, j'ai fais java belote.class, donc normal que ça marche pas.
En faite jeme demandais un truc au lieux de créer les objets comme j'ai plus haut, je me demandais pas si c'est pas une erreur étant donnée qu'il faudra les manipuler.
Ne vaudrait il paas mieux les mettre dans un tableau
Code :
|
Marsh Posté le 27-01-2006 à 21:23:58
Bonjour,
je suis en formation java, et je dois finalisé un projet, pour cela on ma donnée des classes toute prete mais j'arrive pas les créer.
qui peux m'aider ?
ci-joint un descripti d'une d'entre elle