Skip to content

📘 Exercices sur toString() en Java

Exercice 1 : Classe simple

Écrivez une classe Livre avec les attributs suivants :

  • String titre
  • String auteur
  • int anneePublication

👉 Implémentez toString() pour obtenir une représentation lisible comme :

Livre{titre='1984', auteur='George Orwell', annee=1949}

Exercice 2 : Classe avec un tableau

Ajoutez un attribut int[] notes dans la classe Livre représentant les cotes attribuées par différents lecteurs.

👉 Modifiez toString() pour que les notes soient affichées correctement en utilisant Arrays.toString(notes).

Exemple attendu :

Livre{titre='1984', auteur='George Orwell', annee=1949, notes=[5, 4, 5, 3]}

Exercice 3 : Classe avec plusieurs objets

Créez une classe Bibliotheque qui contient :

  • String nom
  • Livre[] livres (un tableau de livres)

👉 Redéfinissez toString() pour afficher le nom de la bibliothèque et les informations de chaque livre (en appelant toString() sur chaque élément du tableau).

Testez en remplissant la bibliothèque avec quelques livres.


Exercice 4 : Enum et toString()

Définissez un enum EtatEmprunt avec trois valeurs :

  • DISPONIBLE
  • EMPRUNTE
  • EN_RETARD

👉 Donnez à chaque valeur un libellé convivial via toString() (par exemple "Disponible", "Emprunté", "En retard"). Associez un EtatEmprunt à chaque Livre et affichez-le dans toString().


Exercice 5 : Références cycliques

Créez une classe Noeud avec :

  • String nom
  • Noeud voisin

👉 Implémentez toString() naïvement, puis reliez deux nœuds en cycle. Constater le problème (StackOverflowError).

👉 Corrigez toString() pour n'afficher que le nom du voisin, et non tout l'objet complet.