Menu

[Java] Utilisation des Getter/Setter [Résolu/Fermé]

Messages postés
154
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
29 novembre 2013
- - Dernière réponse : SyPiC
Messages postés
154
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
29 novembre 2013
- 11 juin 2009 à 16:36
Bonjour,
Je suis débutant en java (moyen) et je fais un projet java pour mon apprentissage d'informaticien. Je voudrais utiliser un getter, mais je n'arrive pas à utiliser les attributs des autres classes. je ne sais pas quelle syntaxe il faut utiliser...
Je m'explique:
- j'ai une classe Joueur
- j'ai une classe Chien
Ma classe Chien comporte un attribut:
private int vie = 5;
Je veux utiliser le int vie dans ma classe joueur. Je veux pouvoir récupérer ce 5 de ma classe Chien et l'utiliser pour faire une boucle while(vie > 0) dans un objet joueur1 de la classe Joueur... J'utilise NetBeans et j'ai fait un projet en UML en parallèle qui m'as généré mes getter automatiquement qui m'a fait ca:

public Chien getChien () {
return mChien;
}

Il m'a aussi déclaré cela dans ma classe:

private Chien mChien;

Donc j'ai déjà le GET mais je sais pas si s'est le bon, je sais pas comment utiliser la valeur. Bref sa marche pas...
Donc si vous avez de l'aide a me proposer se serait super! Si j'ai pas été clair, dites-le moi et je reformulerai ma question autrement...

Merci beaucoup!
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
218
Date d'inscription
mardi 2 juin 2009
Statut
Membre
Dernière intervention
25 septembre 2009
56
16
Merci
ok, un exemple pour comprendre :

******************La Classe Chien *****************************
package testgetset;

public class Chien {
	private int age = 5;

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}	
}



******************La Classe Joueur *****************************
package testgetset;

public class Joueur {	
	
	public void boucle(){
		Chien c = new Chien();
		while(c.getAge() > 0){
			System.out.println("blablabla");
		}
	} 
}


******************La Classe Main*****************************
package testgetset;

public class Main {

	public static void main(String[] args) {
		Joueur j = new Joueur();
		j.boucle();	
	}
}


**********************************************************
J'espère que cela vous serai utile
Bonne chance

Dire « Merci » 16

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 50307 internautes nous ont dit merci ce mois-ci

Messages postés
154
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
29 novembre 2013
18
5
Merci
Je comprends toujours pas...
Bon, je vais faire un petit programme.

La classe Main:

package testgetset;
public class Main {
public static void main(String[] args) {

}
}

La classe Chien:

package testgetset;
public class Chien {
private int age = 5;
}

La classe Joueur

package testgetset;
public class Joueur {
public void boucle(){
while(vie /*du chien mais il faut faire un get... je sais pas comment faire...*/ > 0){
System.out.println("blablabla");
}
}
}

Si quelqu'un peut m'aider en complétant mon programme se serait super...
Voila, merci d'avance...
Messages postés
218
Date d'inscription
mardi 2 juin 2009
Statut
Membre
Dernière intervention
25 septembre 2009
56
4
Merci
puisque vous avez un attribut private int vie = 5;
vous devez avoir dans la même classe:

public int getVie(){
return vie;
}
public void setVie(intvie){
this.vie=vie;
}

et dans la classe où vous voulez récupérer la valeur, il vous suffit seulement d'instancier un Objet de la classe Chien, et faire ObjetChien.getVie() et vous obtenez la valeur déclarer dans l'attribut vie.
Messages postés
154
Date d'inscription
samedi 28 mars 2009
Statut
Membre
Dernière intervention
29 novembre 2013
18
2
Merci
Merci beaucoup pour l'exemple! C'était ce qu'il me manquait...
Ça marche maintenant!