Reprenez les classes du TP 15. Copiez Compte.java et Banque.java dans votre dossier tp16. L'objectif de ce TP est de permettre à votre banque de gérer des comptes avec découvert.
La primitive erreur("description de l'errreur") utilisée en cours d'Algorithmique correspond aux exceptions
en Java. Le mécanisme des exception est complexe, et sera étudié en
deuxième année de DUT. Pour l'instant, nous nous contenterons
d'utiliser (sans plus l'expliquer) l'instruction suivante : throw new
RuntimeException("description de l'erreur"); Lorsqu'une
telle instruction est exécutée dans un programme, cela interromp
l'exécution de la machine virtuelle avec affichage du message d'erreur. 1. comptes avec découvert autorisé Modifiez la classe Compte de manière à gérer un découvert maximum autorisé. Il faudra en particulier créer les accesseurs lireDécouvertAutorisé et affecterDécouvertAutorisé. Pensez à expliciter les invariants de classe dans les commentaires de la classe. Assurez-vous
que ces invariants de classe soient respectés (encapsulation des
données + vérification des invariants de classe par l'ensemble des
méthodes). 2. banque avec gestion des découverts Les exceptions sont là pour prévenir une "mauvaise" utilisation de la classe Compte.
Si un programmeur (utilisateur de la classe) essaie par exemple
d'affecter un découvert autorisé négatif, le programme va "planter"
plutôt que de se retrouver dans situation incohérente (affecter le
découvert autorisé négatif serait incohérent ; ne pas l'affecter et
continuer le programme comme si de rien n'était le serait aussi). Votre classe Banque doit faire "bonne" utilisation de la classe Compte, c'est-à-dire ne jamais déclencher d'exception. Autrement dit : votre programme ne doit jamais "planter" ! Modifiez la classe Banque
de manière à ne jamais déclencher d'exception. Chaque fois que
nécessaire, il faut donc tester les valeurs entrées par l'utilisateur. Ajoutez une opération permettant de modifier la valeur du découvert autorisé.
3. Génération automatique des numéros de comptes Ecrivez une méthode permettant de générer automatiquement un nouveau numéro de compte unique. Conseil
: si les numéros de comptes sont des entiers, il suffira de chercher le
plus grand numéro de compte présent dans la banque, puis d'ajouter 1. Cette méthode doit-elle être publique, ou bien privée ? Modifiez l'opération de création d'un nouveau compte en faisant appel à cette méthode.