TD Programmation par objets - Java, Licence3 - Module ULIN504, Université de Montpellier II

Enseignant resp : Jacques Ferber,ferber@lirmm.fr

TD 1 : Java, La classe !

Exercice 1:

Ecrire une classe Personne permettant de décrire complètement une personne, sachant que l'on souhaite avoir autant d'informations que dans la phrase suivante :

"M. Holly Pierre est né en 1965, il est célibataire."

Exercice 2:

Ajouter un constructeur à la classe Personne.

Exercice 3:

Ajouter, à la classe Personne, une méthode de nom retourneInfos. Cette méthode doit retourner une chaîne de caractères similaire à la phrase donnée dans l’énoncé de l'exercice 1.

Exercice 4:

Ecrire un programme qui déclare 3 variables de type Personne, crée 3 instances de personne pour les affecter dans les variables et affiche les informations les concernant.

Exercice 5:

Ajouter une méthode age qui renvoie l’âge de l'individu en fonction d'une année donnée en paramètre.

Exercice 6:

Ajouter à la classe Personne un attribut conjoint et examiner les conséquences que cela peut avoir sur l'ensemble du code.

Attention: la polygamie et la polyandrie sont interdites :-(

Exercice 7:

Ajouter une méthode marier(Personne p) qui permet de marier une personne à une autre. Modifier la méthode retourneInfos de façon que le nom (traditionnel de la femme devienne):

Pour simplifier : quand une femme se marie son nom devient : "[nom de l'époux] née [nom de jeune fille]", par exemple :  
si Mlle Durant se marie avec M. Dupond, son nom deviendra Mme "Dupond née Durant"

Attention: cet exercice ne prétend pas représenter l'état actuel de la loi qui stipule que le nom d'une femme ne change pas, mais qu'elle peut, si elle le désire, substituer le nom de son marie au sien, ou accoler les deux noms. Mais cela ne fait pas partie de l'exercice.

Exercice 8:

Ecrire une classe Etudiant qui hérite de Personne. Dans cette classe on ajoutera les informations suivantes: numéro d'étudiant, année de première entrée à l'université. Modifier la méthode retoureInfos pour prendre en compte ces nouvelles informations lors de l'affichage.