Bonjour à tous,
Comment je peux appeler une méthode qui est dans une autre classe s'il vous plait ?
J'ai la classe Outil et la classe Robot.
Je veux appeler une méthode de la classe Outil dans la classe Robot.
J'ai mis Outil.getDegats (où getDegats est le nom de la méthode) mais j'ai des erreurs dans la compilation.
Merci de votre aide
Royce'
Les classes sont dans le même package ? Si oui, il suffit de l'appeler directement par son nom.
Par contre en l'occurrence pour appeler getDegats() (avec les parenthèses) il faut une instance de l'objet dont tu veux récupérer les dégâts.
Par exemple tu déclares un robot :
Robot r = new Robot();
int i = r.getDegats();
Bon après tu ranges le résultat du getDegats() où tu veux, l'entier i c'était pour l'exemple
J'ai oublié les parenthèses, c'est peut-être ça.
Je vais essayer.
Et l'instance est obligatoire ?
Et une autre question s'il te plait.
Comment je peux utiliser un attribut de la classe Outil dans la classe Robot alors qu'il est en private ?
Merci
Il faut que tu exposes une méthode te permettant d'y accéder, on appelle ça un "getter". Son pendant pour l'écriture est le "setter".
Les accesseurs c'est bien ça ?
Oui accesseur (getters) et mutateurs (setters).
Mais tu veux l'utiliser comment au juste ? Parce qu'apparemment t'as compris le principe du getter vu ton getDegats()
Bah je veux accéder à des attributs d'une classe mais via une autre classe.
Il faut donc que j'utilise les getters c'est bien ça ?
Il faut raisonner en terme d'objets (instances de classe), pas de classes Mais oui si tu veux récupérer un attribut, tu le fais avec un getter, si tu veux modifier un attribut, un setter.
Problème résolu.
Merci beaucoup