developvbdebut
Messages postés476Date d'inscriptionsamedi 14 août 2004StatutMembreDernière intervention 2 juin 2012
-
5 avril 2006 à 10:36
developvbdebut
Messages postés476Date d'inscriptionsamedi 14 août 2004StatutMembreDernière intervention 2 juin 2012
-
7 avril 2006 à 21:00
Bonjour tout le monde
J'ai un probleme pour la réalisation d'une fonction.
bloofi
Messages postés388Date d'inscriptionmercredi 1 octobre 2003StatutMembreDernière intervention 3 mai 20062 5 avril 2006 à 11:44
tu as mis ta fonction instruct() dans le constructeur, essaye d'organiser ta classe comme ca :
import java.awt.*;
import java.awt.event.*;
public class Monnayeur {
int rendcinqc, renddixc, rendvingtc, rendcinquc, renduneurro,sr, sar, cout;
Coeurmc c = new Coeurmc();
Stockpiece p = new Stockpiece(c);
public static void main (String [] args){
//point d'entrée du programme
//new Monnayeur() ;
//ligne du dessus à decommenter pour instancier ta classe
}
public Monnayeur(){
//constructeur
//la tu peux executer ta fonction instruct() ;
}
public void instruct(){
if((c.bcaf.equals("café")
&& sr==0) ||(c.bcafl.equals("café au lait") &&
sr==0)||(c.bcho.equals("chocolat") &&
sr==0)||(c.bth.equals("the") && sr==0))
{
c.Textmessage="Somme insuffisante";
}
else
{
sar = sr-cout;
sar = sar*10;
}
}//fin de instruct()
.\Stockpiece.java:8: Stockpiece is not abstract and does not override abstract m
ethod actionPerformed(java.awt.event.ActionEvent) in java.awt.event.ActionListen
er
public class Stockpiece implements ActionListener
^
De plus, dans mon livre il n'explique pas clairement ce qu'est un constructeur.
bloofi
Messages postés388Date d'inscriptionmercredi 1 octobre 2003StatutMembreDernière intervention 3 mai 20062 6 avril 2006 à 10:40
coucou,
alors tu as effectivement 2 erreurs (au moin, j'ai pas tout regardé)
tu as encore oublié une accolade a la fin de ton constructeur
public Stockpiece(int somme, Monnayeur m)
{
insertpiece=somme;
this.m=m;
}
ensuite
tu as mis "implements ActionListener", quand tu met ca, ca veut dire
que tu implemente une interface et que tu dois donc en redefinir toutes
les méthodes, en l'occurence la methode "actionPerformed", dans to ncas
il faut que tu rajoute :
public void actionPerformed(ActionEvent e){
}
un constructeur permet d'instancier une classe, par exemple si tu as une classe Choucroute, quand tu fait :
Choucroute c = new Choucroute() ;
ca appelle le constructeur :
public Choucroute(){ ... } qui est dans la classe Choucroute
le consctruteur doit porter le meme nom que la classe.
Monnayeur.java:17: cannot find symbol
symbol : constructor Coeurmc()
location: class Coeurmc
Coeurmc c = new Coeurmc();
^
Monnayeur.java:19: cannot find symbol
symbol : constructor Stockpiece(Coeurmc)
location: class Stockpiece
Stockpiece p = new Stockpiece(c);
^
Monnayeur.java:152: cannot return a value from method whose result type is void
return(0);
^
3 errors
Monnayeur.java:17: cannot find symbol
symbol : constructor Coeurmc()
location: class Coeurmc
Coeurmc c = new Coeurmc();
^
Monnayeur.java:19: cannot find symbol
symbol : constructor Stockpiece(Coeurmc)
location: class Stockpiece
Stockpiece p = new Stockpiece(c);
^
Monnayeur.java:152: cannot return a value from method whose result type is void
return(0);
^
3 errors
bloofi
Messages postés388Date d'inscriptionmercredi 1 octobre 2003StatutMembreDernière intervention 3 mai 20062 6 avril 2006 à 21:15
la classe Coeurmc se trouve dans le meme package que Monnayeur ?
si ce n'est pas le cas, il faut soit que tu ajoute l'import :
import package.package.package.Classe ;
ou alors faire :
package.package.Coeurmc mc = new package.package.Coeurmc()
bloofi
Messages postés388Date d'inscriptionmercredi 1 octobre 2003StatutMembreDernière intervention 3 mai 20062 6 avril 2006 à 21:18
Tiens j'ai oublié de dire, je suis sur que l'autocompletion (et autres aides) d'eclipse aurait une bien meilleure pédagogie que celle de ton prof :D
m'enfin jvai pas m'engager dans ce genre de conversation, ca ne respecterai plus le reglement du forum ^^
frank_sauvage
Messages postés56Date d'inscriptionjeudi 14 avril 2005StatutMembreDernière intervention 9 avril 2006 6 avril 2006 à 21:29
hum hum..bloofi qui critique les profs..bon à savoir ca ;)..
plus serieusement question pedagogie il est indeniable qu'il est
neccessaire pour les etudiants de commencer l'apprentissage de java
sans IDE.
et ce pour les raisons suivantes :
- apprentissage des differents outils liés a java : javac, java etc..
- apprentissage de l'arborescence normalisée java src, class..ainsi que de l'arborescence des packages.
- et pour finir, simplement pour forcer à ecrire le minimum :
package, import, class, public void main, etc..
en dehors de cela, il me semble que c'est quelque peu une perte de
temps à la fois pour l'enseignant et pour l'apprenant que de continuer
a la main passées les 10 premieres heures.
des notions telles que la programation orientée objet, et non
uniquement quelques classes mais bel et bien une application, avec du
polymorphisme sont certainement plus importantes.
il va sans dire que chaque enseignant posséde ses methodes, mais au
dela de cela il convient aux etudiants de s'adapter au mieux. si un
enseignant doit faire face à une centaine d'eleves il n'est pas
possible d'avoir une pedagogie universelle, ou alors si il y'avait un
prix nobel d'enseignement, il faudrait l'attribuer a la personne
l'ayant decouverte.
maintenant, tout depends comment ton enseignant note et ce que tu
cherches, mais dans une entreprise je ne pense pas que l'on te demander
de programmer sous bloc note, mais bel et bien sous eclipse.
et la, le fait d'etre capable d'ecrire 10000 lignes sans erreur à la
main ne servira pas a grand chose. ce qui comptera c'est ta capacité à
analyser un probléme et à le resoudre.
tout est question d'equilibre. donc oui il a raison..mais jusqu'à un certain point :)