Figure 1

Figure 2

Exercice 1

Le premier problème qui se pose lors de la réalisation d'une application un tant soit peu plus importante que celles qui ont été abordées jusqu'à maintenant dans les TD et TP, c'est la compréhension générale de l'architecture de l'application.

Le premier exercice consiste donc à déterminer l'architecture d'ensemble de l'application en déterminant les classes, éventuellement les sous-classes, et l'ensemble des relations qui existent entre ces classes. En UML ces relations s'expriment sous la forme d'associations et d'agrégations. En termes d'implémentation en Java, ces liens sont implémentés sous la forme d'attributs.

Dans ce premier exercice, on ne cherche pas à décrire les méthodes ni l'ensemble des attributs de chaque classe, uniquement les classes, les relations d'héritage et les relations entre classes.

Cette phase est très importante, car les exercices suivants en dépendent.

Exercice 2

Ecrire les classes Personne, Compte, CompteCourant, CompteLivret et Banque avec leurs méthodes et leurs attributs sans tenir compte de la classe Guichet.

A la fin de cet exercice on doit disposer d'une application qui fonctionne sans interface.

Exercice 3

Ecrire la classe Guichet en définissant les interfaces nécessaires à sa réalisation. Pour implémenter la liste des comptes d'un utilisateur on utilisera la classe java.awt.List.

Voici quelques notions pour utiliser une telle liste de sélection. Une liste est simplement un composant graphique. Il suffit de lui ajouter les chaînes de caractères correspondantes.

List lst = new List(4); // 4 rangées sont visibles.
lst.add("Mercury");
lst.add("Venus");
lst.add("Earth");
lst.add("Mars");
lst.add("Jupiter");
lst.add("Saturn");
lst.add("Uranus");
lst.add("Neptune");
lst.add("Pluto");
monPanel.add(lst);

Quand on double clique sur un des éléments de cette liste ou bien quand on appuie sur return après avoir sélectionné un élément, la liste envoie un message actionPerformed(ActionEvent e), comme un bouton. Les méthodes int getSelectedIndex() et String getSelectedItem() retournent respectivement l'indice de l'item sélectionné et la chaîne de caractère sélectionnée.

TD Programmation par objets - Java, Licence Informatique, Sept-Déc 2002, Université de Montpellier II

Enseignant resp : Jacques Ferber,ferber@lirmm.fr

TD 10 - Gestion de comptes en banque

 

On désire créer un système de gestion de comptes en banque. Pour cela on suppose que l'on a analysé le système et que le système se compose:

A partir d'un guichet, l'utilisateur entre son nom et son mot de passe. L'interface du guichet lui retourne la liste de ses comptes, comme le montre la figure 1.

En cliquant sur l'un de ces comptes, on ouvre une fenêtre comprenant l'ensemble des opérations que l'on peut faire sur un compte (déposer et retirer de l'argent). Il suffit de mettre un montant dans le champ prévu à cet effet et de cliquer sur l'opération correspondante. Le solde se met automatiquement à jour (cf. figure 2):