Classe Java
Résolu
Apaachee
Messages postés
248
Date d'inscription
Statut
Membre
Dernière intervention
-
LnG01 Messages postés 263 Date d'inscription Statut Membre Dernière intervention -
LnG01 Messages postés 263 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je dois créer un jeu dans le cadre de ma licence. Le jeu se fait sur un plateau et le nombre de cases de ce plateau est variable ainsi que la couleur des pions que l'ordinateur joue.
Deux autres classes existent : Connexion (l'interface graphique qui fait jouer ma classe joueur) et la classe coup, je n'ai pas accès à ces classes.
Le jeu appelle mon constructeur de ma classe Joueur puis fait jouer ma fonction Coup().
Comment récupérer mes variables nbCases et couleur(2 joueurs donc 2 couleurs de pions) dans ma fonction Coup() ?
Je dois créer un jeu dans le cadre de ma licence. Le jeu se fait sur un plateau et le nombre de cases de ce plateau est variable ainsi que la couleur des pions que l'ordinateur joue.
class Joueur{ Joueur(int n, String c, boolean variante){ int nbCases = n; String couleur = c; System.out.println("Couleur : "+couleur+" Taille plateau : "+nbCases); } Coup play(Coup a){ ... } }
Deux autres classes existent : Connexion (l'interface graphique qui fait jouer ma classe joueur) et la classe coup, je n'ai pas accès à ces classes.
Le jeu appelle mon constructeur de ma classe Joueur puis fait jouer ma fonction Coup().
Comment récupérer mes variables nbCases et couleur(2 joueurs donc 2 couleurs de pions) dans ma fonction Coup() ?
A voir également:
- Classe Java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
8 réponses
créer des getters qui récupère ces variables ex :
public int getNbCases () {
return this.nbCases;
}
tu les appelles ensuite dans ta méthode Coup
public int getNbCases () {
return this.nbCases;
}
tu les appelles ensuite dans ta méthode Coup
déclare tes variables en globales dans ta classe :
class Joueur{ int nbCases; String couleur; Joueur(int n, String c, boolean variante){ setNbCases(n); setCouleur(c); System.out.println("Couleur : "+getCouleur()+" Taille plateau : "+getNbCases()); } public int setNbCases(int nbrCases) { this.nbCases=nbrCases; } public String setCouleur(String color) { this.couleur=color; } public int getNbCases() { return this.nbCases; } public String getCouleur() { return this.couleur; } Coup play(Coup a){ getNbCases(); } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
de rien, c'est la base là les getters et setter...
Bonne chance pour la suite
PS : pour info, si tu déclares les variables dans ton constructeur, elles ne seront visibles que par ce conctructeur, et pas accessibles de l'extérieur (elles n'existent qu'à l'intérieur de cette méthode), d'où l'interet de les déclarer dans la classe elle même. Ainsi, n'importe quelle méthode de ta classe Joueur peut y accéder.
Le constructeur est là pour "paramétrer" ces variables (leur donner une valeur) mais pas pour déclarer leur existence, cela se fait au niveau de la classe.
Bonne chance pour la suite
PS : pour info, si tu déclares les variables dans ton constructeur, elles ne seront visibles que par ce conctructeur, et pas accessibles de l'extérieur (elles n'existent qu'à l'intérieur de cette méthode), d'où l'interet de les déclarer dans la classe elle même. Ainsi, n'importe quelle méthode de ta classe Joueur peut y accéder.
Le constructeur est là pour "paramétrer" ces variables (leur donner une valeur) mais pas pour déclarer leur existence, cela se fait au niveau de la classe.
J'ai vraiment du mal avec les classes :/
2 classes dans 2 fichiers :
2 classes dans 2 fichiers :
class Joueur{ int nbCases; String couleur; Plateau plat; Joueur(int n, String c, boolean variante){ setNbCases(n); setCouleur(c); plat = new Plateau((2*n)+1); } ... } class Plateau{ char[][] plateau; Plateau(int n){ System.out.println("Nb cases plateau : "+n+"x"+n); int i,j; for(i=0;i<=n;i++){ for(j=0;j<=n;j++){ setcase(i,j,'0'); } } } public void setcase(int x, int y, char valeur) { this.plateau[x][y] = valeur; } } Erreur : java.lang.NullPointerException
faut instancier ton plateau :
char [][] plateau = new char[a][b] où a et b étant les valeurs que tu veux, ou new char[a][] le deuxième paramètre étant défini dans une boucle
regarde ici : http://www.a525g.com/programmation/java-introduction-tableaux.htm
ou là : http://prevert.upmf-grenoble.fr/Prog/Java/CoursJava/tableaux.html
char [][] plateau = new char[a][b] où a et b étant les valeurs que tu veux, ou new char[a][] le deuxième paramètre étant défini dans une boucle
regarde ici : http://www.a525g.com/programmation/java-introduction-tableaux.htm
ou là : http://prevert.upmf-grenoble.fr/Prog/Java/CoursJava/tableaux.html