Vous êtes sur la page 1sur 1

Universit de Mohammed El-Bachir El-Ibrahimi, Bordj Bou Arrridj Facult des Sciences et de la Technologie Dpartement d'Electronique Mr. S. E.

MEZAACHE TP2 Hritage


Dimanche 04 novembre 2012

Exercice Nous allons crer une classe qui permet de reprsenter une personne, qui possde nom, prnom, et ge. Nous crerons ensuite deux classes filles de la classe Personne : une classe Enseignant et une classe Auteur. 1. Crez une classe Personne qui aura quatre attributs privs : une chane de caractres prenom, une chane de caractres nom, un entier age, une profession (chane de caractres). 2. Dotez la classe Personne de constructeurs. Ils pourront admettre trois arguments (on dfinit lge, le nom et le prnom de la personne que lon instancie, la professions est mise ), ou bien deux arguments (lge nest pas prcis et est alors mis -1, ce qui signifie non dfini, la profession est mise ), ou quatre arguments (tout est dfini ds linstanciation). 3. Crez une mthode sePresenter() qui permet une personne de se prsenter : elle renvoie donc une chane de caractres "Je mappelle <prenom> <nom>, jai <age> ans" ou bien "Je mappelle <prenom> <nom>" si lge nest pas dfini. 4. Crez une classe Monde qui contient le main, crez deux personnes et faites-les se prsenter (affichages lcran). 5. Pouvez-vous faire safficher le nom, et seulement le nom (sans utiliser sePresenter() donc) dune personne, dans la classe Monde ? Crez donc une mthode publique getNom() qui retourne une chane de caractres (le nom) et servez-vous en dans Monde pour afficher le nom dune des personnes que vous avez cres. 6. Crez une classe Enseignant qui hrite de la classe Personne : le constructeur (commencez crer un constructeur trois arguments, nom, prnom, et ge) doit faire appel au constructeur de la classe mre (super()) et dfinir la profession, qui vaudra la chane enseignant. 7. Dfinissez dans cette classe une mthode sePresenter() qui redfinit la mthode sePresenter() de la classe mre en rajoutant la fin et je suis enseignant. L encore, pour dsigner la mthode de mme nom de la classe mre vous pourrez utiliser super : super.sePresenter() dsigne la mthode sePresenter() de la classe mre. 8. Essayez dafficher, dans la classe Monde, le nom, et seulement le nom de l'enseignant. Est-il ncessaire de redfinir la mthode getNom() dans la classe Enseignant ? 9. Rajoutez un attribut priv la classe Enseignant : etablissement (chane de caractres) et crivez une mthode setEtablissement() qui prend en paramtre une chane de caractres (le nom de l'tablissement) qui permet dattribuer une valeur cet attribut, et une mthode getEtablissement() qui retourne une chane de caractres : le nom de l'tablissement de l'enseignant, sil en a une, une chane vide sinon. 10. Modifiez la mthode sePresenter() de la classe Enseignant en consquence. 11. Testez.