A voir également:
- Stackoverflow java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java décompiler - Télécharger - Langages
1 réponse
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
10 janv. 2019 à 21:03
10 janv. 2019 à 21:03
Bonjour,
Le problème ce sont les toString de Voiture et Utilisateur.
La Voiture affiche le propriétaire, dont on affiche les voitures, pour lesquelles on affiche le propriétaire, duquel on affiche les voitures, qui ont un propriétaire, ayant des voitures, etc.
Tu as une récursivité croisé qui boucle à l'infini, mais la pile d'appel (Stack) est limité, donc au delà de 1024 ça dépasse (Overflow) d'où la StackOverflowError.
Modifies comme tu veux, un des toString voire les deux, mais il ne faut pas d'appel récursifs.
Le problème ce sont les toString de Voiture et Utilisateur.
"Voiture [nrPlaque=" + nrPlaque + ", proprietaire=" + proprietaire + "]"; "Utilisateur [nom=" + nom + ", voitures=" + voitures + "]";
La Voiture affiche le propriétaire, dont on affiche les voitures, pour lesquelles on affiche le propriétaire, duquel on affiche les voitures, qui ont un propriétaire, ayant des voitures, etc.
Tu as une récursivité croisé qui boucle à l'infini, mais la pile d'appel (Stack) est limité, donc au delà de 1024 ça dépasse (Overflow) d'où la StackOverflowError.
Modifies comme tu veux, un des toString voire les deux, mais il ne faut pas d'appel récursifs.
10 janv. 2019 à 22:26