Prob débutant java

The Waxy Man Messages postés 26 Date d'inscription lundi 24 septembre 2001 Statut Membre Dernière intervention 6 novembre 2003 - 15 oct. 2002 à 21:03
The Waxy Man Messages postés 26 Date d'inscription lundi 24 septembre 2001 Statut Membre Dernière intervention 6 novembre 2003 - 20 oct. 2002 à 00:21
salut, j'ai commencé un prog avec un petit menu mais j'ai un prob, a mon avis c'est dans mes classes !

Merci et @++

/*Réaliser une classe Etudiant. Chaque étudiant sera caractérisé par son nom, son prénom et son numéro identifiant. La classe Etudiant comporte en plus un champ statique : le nom de l'école.
Ecrivez le code d'un constructeur sans argument.
Ecrivez le code d'un constructeur qui reçoit le nom et le prénom de l'étudiant en arguments.
*/
class Etudiant
{
String nom, prenom;
int num;
static String ecole="EPHEC";

// comment changer le contenu de "ecole" ?


public static void Affiche_Tout()
{
System.out.println("/nNom: "+nom+"\nPrenom: "+prenom+"\nNumero: "+num+"\nNom ecole: "+ecole+"/n*****");
}

public void new_student()
{
int nb_eleves;

System.out.println("Entrez le nombre l'eleves que vous souhaitez enter:/n> ");
nb_eleves=Clavier.lireInt();
Etudiant[] et= new Etudiant[nb_eleves];

for (int i=0; i<nb_eleves; i++)
{
et[i] = new Etudiant();
System.out.println("Nom: ");
et[i].nom=Clavier.lireString();
System.out.println("Prenom: ");
et[i].prenom=Clavier.lireString();
System.out.println("Numero: ");
et[i].num=Clavier.lireInt();
}
}
}

class Application
{public static void main (String args[])
{
int choix=0;

while (choix != 3);
{
System.out.println("Bienvenue sur GestStud 1.0");
System.out.println("Pour entrer de nouveaux eleves tappez : 1");
System.out.println("Pour tout afficher tappez : 2");
System.out.println("Pour quittez tappez : 3/n/n/n> ");

choix = Clavier.lireInt();

switch (choix) {
case 1 : new_student(); break;
case 2 : Affiche_Tout(); break;
case 3 : break;
}
}
}

}

9 réponses

The Waxy Man Messages postés 26 Date d'inscription lundi 24 septembre 2001 Statut Membre Dernière intervention 6 novembre 2003
15 oct. 2002 à 21:06
j'ai mis public void Affiche_Tout().. j'ai viré le static ... mais j'ai encore 2 erreurs, C'est un prob avec Affiche_Tout() et new_student() dans le main ...
0
ah.dz Messages postés 8 Date d'inscription jeudi 19 avril 2001 Statut Membre Dernière intervention 8 novembre 2002
15 oct. 2002 à 23:26
Je ne comprend pas ce que tu veux faire mais il faut que tu saches qu'une variable static a la même valeur pour toutes les instances de la classe.
0
JHelp Messages postés 261 Date d'inscription jeudi 5 septembre 2002 Statut Membre Dernière intervention 6 octobre 2005 11
16 oct. 2002 à 09:41
Peux tu etre plus précis, par exemple donne nous l'erreur générée, ça serait plus simple.

JHelp
0
The Waxy Man Messages postés 26 Date d'inscription lundi 24 septembre 2001 Statut Membre Dernière intervention 6 novembre 2003
16 oct. 2002 à 14:28
Voici les messages:

-> cannot resolve symbol
case1: new_student(); break
location : class Application
symbol: method new_student ()

idem avec Affiche_Tout();

en gros, voilà ...

c'est une prog pour l'école, il créé des etudiant et je sais mettre les données mais quand j'ai voulu insérer un menu et un boucle pour le menu, ca a foiré ... merci pour votre aide... :D
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Morlan Messages postés 7 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 17 octobre 2002
16 oct. 2002 à 21:14
Salu Waxy!

Premierement, ton menu, qui appartient a la classe Application, appelle la methode new_student(), qui elle appartient a la classe Etudiant! Tu peux resoudre ca de deux manieres: Un, tu declares la methode new_student statique, puis dans le menu tu appelles Etudiant.new_student() . Deux, tu vires la classe Application et mets directement la methode main dans la classe etudiant.

Deuxieme probleme: ta methode affiche_tout est statique, mais elle fait appelle a des variables d'instance(non statiques) :nom,prenom... INTERDIT
En fait, si tu veux afficher les donnees concernant un certain eleve, ben la methode ne doit pas etre statique, pour que tu puisses ecrire: unCertainEleve.Affiche_Tout()

Si je tai plus embrouille kotre chose, precise exactement ce que tu veux faire(afficher un eleve en particulier, toute l'ecole...) et ce que tu as le droit de faire(par exemple ajouter une classe Ecole..), ce sera plus facile de t'aider.(o fait je n'ai pas vu de constructeur..)

Bonne chance!
0
The Waxy Man Messages postés 26 Date d'inscription lundi 24 septembre 2001 Statut Membre Dernière intervention 6 novembre 2003
16 oct. 2002 à 23:06
ben en fait ton message répond à toutes mes questions... j'ai commencé le java il y a 1 mois et j'ai fait 4 mois de pascal puis 8 mois de C ... alors je dois m'habituer au nouveau vocabulaire.. hé oui !
je vais décortiquer ton message demain ... Un GRAND merci pour ton aide!

PS: depuis combien de temps fais tu du java ? c'est pour le perso ou c'est pour le boulo ? :D

Merci et a bientot !

Cédric ;-)
0
Morlan Messages postés 7 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 17 octobre 2002
17 oct. 2002 à 01:50
Je suis content de t'avoir aidé Waxy
J'ai commencé le java il y a 5mois a l'université, apres avoir fait du c++ pendant 3 mois(=1 session).Au debut je haissais Java et je continuais a traviller uniquement C++ chez moi:); avec le temps j'ai decouverts bien des avantages Java , et maintenant j'en fais uniquement pour le plaisir.
A+
Karim
0
Morlan Messages postés 7 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 17 octobre 2002
17 oct. 2002 à 01:51
Je suis content de t'avoir aidé Waxy
J'ai commencé le java il y a 5mois a l'université, apres avoir fait du c++ pendant 3 mois(=1 session).Au debut je haissais Java et je continuais a traviller uniquement C++ chez moi:); avec le temps j'ai decouverts bien des avantages Java , et maintenant j'en fais uniquement pour le plaisir.
A+
Karim
0
The Waxy Man Messages postés 26 Date d'inscription lundi 24 septembre 2001 Statut Membre Dernière intervention 6 novembre 2003
20 oct. 2002 à 00:21
Salut, je me permet de te demander un peu d'aide.
je te donne le code (voir plus bas) et regarde si tu sais l''arranger car ca ne va pas... je ne vois pas comment faire un construction et je ne vois pas l'utilité réelle... et aussi je vais un peu t'expliquer ce que le prog devrais donner.

1) il affiche le menu
2) on entre un choix 1 - 2 - 3
3) en C j'utiliserais une fonction pour entrer un nouveau etudiant et une fonction pour tout afficher mais en java je ne vois pas... a mon avis ca devrais être la meme chose.
4) si on fait "1" on doit pouvoir entrer le nombre d'etudiants que l'on veut entrer.
5) il demande le nom, le prenom et le numéro
6) en fait la variable ecole contient le nom de l'école mais doit etre commun à tout les etudiant et que si on la change( ce que je n'ai pas encore prévu) que ca change chez tout les etudiant.

Je crois que c'est + ou - tout. Merci pour ton aide...
j'essaye de me mettre au java mais les cours ne sont pas excellents.. en plus j'ai commandé un livre mais ca fait un mois que je l'attend !

@++

/*Réaliser une classe Etudiant. Chaque étudiant sera caractérisé par son nom, son prénom et son numéro identifiant. La classe Etudiant comporte en plus un champ statique : le nom de l'école.
Ecrivez le code d'un constructeur sans argument.
Ecrivez le code d'un constructeur qui reçoit le nom et le prénom de l'étudiant en arguments.
*/
class Etudiant2
{
String nom, prenom;
int num;
static String ecole="EPHEC";

public void Affiche_Tout()
{
System.out.println("/nNom: "+nom+"\nPrenom: "+this.prenom+"\nNumero: "+this.num+"\nNom ecole: "+this.ecole+"/n*****");
}

public void new_student()
{
int nb_eleves;

System.out.println("Entrez le nombre l'eleves que vous souhaitez enter:/n> ");
nb_eleves=Clavier.lireInt();
Etudiant2[] et= new Etudiant2[nb_eleves];

for (int i=0; i<nb_eleves; i++)
{
et[i] = new Etudiant2();
System.out.println("Nom: ");
et[i].nom=Clavier.lireString();
System.out.println("Prenom: ");
et[i].prenom=Clavier.lireString();
System.out.println("Numero: ");
et[i].num=Clavier.lireInt();
}
}

public static void main (String [] args)
{
int choix=0;

while (choix != 3);
{
System.out.println("Bienvenue sur GestStud 1.0");
System.out.println("Pour entrer de nouveaux eleves tappez : 1");
System.out.println("Pour tout afficher tappez : 2");
System.out.println("Pour quittez tappez : 3/n/n/n> ");

choix = Clavier.lireInt();

switch (choix) {
case 1 : new_student(); break;
case 2 : Affiche_Tout(); break;
case 3 : break;
}
}
}
}
0