Appel d'une variable
i just wanna know
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Salut tout le monde,
je dois déclarer une matrice dans une classe et la manipuler dans une autre,càd que je vais l'instancier de la maniere suivante:
la classe Labyrinthe contient la matrice mat
et la manipulation se fait au niveau de la classe Manip
pour l'appel je me positionne dans Manip et j'écris :
labyrinthe laby = new Labyrinthe();
puis pour manipuler mat je fais laby.mat;
c'est ce que j'ai appris à faire dans java,cependant lorsque j'exécute j'ai le message "stack overflow" qui s'affiche est ce que c'est du à la taille de la matrice ou quoi???
je dois déclarer une matrice dans une classe et la manipuler dans une autre,càd que je vais l'instancier de la maniere suivante:
la classe Labyrinthe contient la matrice mat
et la manipulation se fait au niveau de la classe Manip
pour l'appel je me positionne dans Manip et j'écris :
labyrinthe laby = new Labyrinthe();
puis pour manipuler mat je fais laby.mat;
c'est ce que j'ai appris à faire dans java,cependant lorsque j'exécute j'ai le message "stack overflow" qui s'affiche est ce que c'est du à la taille de la matrice ou quoi???
A voir également:
- Appel d'une variable
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Appel privé - Guide
- Double appel - Guide
- Appel externe - Forum telephonie fixe
- Signal d'appel - Forum iPhone
1 réponse
Stack Overflow ce serait plutôt dû à un trop grand nombre d'appels récursifs.
Remarque : utiliser laby.mat ce n'est pas très propre comme code, faire ne serait-ce qu'une petite méthode mat() { return mat; } serait un peu mieux. Tu aurais alors à manipuler laby.mat(), ce qui ne change pas grand chose. ;-)
La confiance n'exclut pas le contrôle
Remarque : utiliser laby.mat ce n'est pas très propre comme code, faire ne serait-ce qu'une petite méthode mat() { return mat; } serait un peu mieux. Tu aurais alors à manipuler laby.mat(), ce qui ne change pas grand chose. ;-)
La confiance n'exclut pas le contrôle
effectivement y a plusieurs appels récursifs dans mon pgm...en fait je vois pas comment je peux le faire autrement.Je vais essayer de faire la méthode mat () que vous avez proposé et je vous rendrai la réponse. :-)
C'est gênant qu'une classe externe puisse se permettre ce genre de choses...
Mais ça ne résoudra pas ton problème, qui est plutôt lié à une récursion infinie comme dans cette exemple qui te permettra peut être de comprendre la StackOverflowError ;-)
public class Test { static int n = 0; public static void main(String...args) { n++; try { main(); } catch (StackOverflowError e) { System.err.println(e+" : n="+n); } }