Vous êtes sur la page 1sur 1

République du Sénégal

Ministère de l’Enseignement Supérieur et de la Recherche PROMO 15-16, Année académique : 2016-2017

Licence 3 en Informatique (GL et RT)


INF 3531 : Programmation Orientée Objet 2
-----------
Responsables CM : Pr THIAM - TD/TP : M. DIOP

Unité de Formation et de Recherche en Sciences Et Technologies Fiche n° 1 : (Révision) Héritage &Polymorphisme


Département Informatique

Exercice 1 :
1. Écrire une classe Java Point permettant de décrire les coordonnées d'un point dans le plan. Cette classe a :
 des attributs privés x et y.
 un constructeur public Point (int x, int y) qui permet d'initialiser le point lors de sa création.
 des méthodes public int getX() et public int getY() qui retournent respectivement les valeurs de x et
de y.
 une méthode public String toString() (appelée par println( ) ) qui retourne une chaîne de caractères
de la forme "(1,4)".
 une méthode de test public static void main(String[] args) qui crée deux points et affiche leurs
coordonnées.
2. Écrire une classe Java Segment permettant de décrire un segment dans le plan. Celui-ci est défini par deux
points : ses extrémités. Cette classe a :
 des attributs de type Point : p1 et p2.
 un constructeur public Segment(Point p1, Point p2) qui permet d'initialiser le segment lors de sa
création.
 une méthode public String toString() (appelée par println()) qui retourne une chaîne de caractères de
la forme "[(1,4)..(2,5)]".
 une méthode de test public static void main(String[] args) qui crée d’abord deux points, à partir de
coordonnées passées sur la ligne de commande, et crée ensuite un segment à partir de ces points.
Exercice 2 :
Pour la gestion d'une bibliothèque on demande d'écrire une application manipulant des documents de nature
diverse : des livres, des dictionnaires, etc. Tous les documents ont un numéro d'enregistrement et un titre. Les
livres ont, en plus, un auteur et un nombre de pages, les dictionnaires ont une langue et un nombre d'articles.
Ces diverses sortes de chose doivent pouvoir être manipulées de façon homogène en tant que documents.
1. Définissez les classes Document, Livre et Dictionnaire. Donnez à chacune le constructeur qui prend autant
arguments qu'il y a de variables d'instance à initialiser, et qui se limite à recopier les valeurs des arguments
dans les variables correspondantes.
2. Définissez une classe Bibliotheque réduite à une méthode main permettant de tester les classes précédentes.
3. Définissez la classe ListeDeDocuments permettant de créer une liste (vide) de documents, d'y ajouter un
élément, de parcourir la liste.
4. Dans la classe ListeDeDocuments définissez une méthode tousLesAuteurs() qui affiche la liste des numéros
des documents de la liste avec, pour chacun, l'éventuel auteur.
5. Ajoutez une méthode description ( ), définie dans la classe Document et redéfinie dans les classes Livre et
Dictionnaire qui renvoie une chaîne de caractères qui est la « fiche de bibliothèque» d'un document.
6. Ajoutez alors dans la classe ListeDeDocuments une méthode toutesLesDescriptions qui affiche
consécutivement les descriptions de tous les documents.