DEVOIR SURVEILLE
Matière : PROGRAMMATION ORIENTEE OBJET Documents : Non autorisés
Enseignantes : : Mhafdhi H & Ezzedine S Durée : 1h
Classe : MDW2 Date : 08/11 2023
Le devoir comporte 3 pages
Il vous est demandé d’apporter un soin particulier à la présentation de votre copie.
EXERCICE 1 (3 POINTS)
1) Soit les deux classes A et B définies comme suit
a) 6 et 2009 et encore 4
b) 6 et 2004 et encore 4
c) 6 et 2004 et encore 2003
d) Autre
2) Soit les deux classes Person et TestPersonne définies comme suit :
class TestPersonne {
public class Person {
public static void main(String args[]) {
public String name; Person p = new Person();
public int height; p.name = "EJava";
} methode2(p);
System.out.print(p.name);
methode1(p);
System.out.print(p.name);
}
static void methode1(Person p) {
p.name = " Méthode1";
System.out.print(p.name);
}
static void methode2(Person p) {
p = new Person();
p.name = "Méthode2 ";
System.out.print(p.name); } }
1
Quel est le résultat d’exécution de ce code ?
a. Méthode2 Méthode1Méthode2 EJava
b. EJava EJava Méthode2 Méthode1
c. Méthode2 EJava
d. EJava Méthode1
e. Méthode2 EJavaMéthode1 Méthode1
EXERCICE 2 (17 POINTS)
On souhaite implémenter une application de Gestion de textes.
Tout texte est constitué d’un ensemble de mots. Un mot est caractérisé par son contenu (String),
sa signification(String), son nombre de caractère(int) et un ensemble de mots synonymes
(tableau d’objets Mot).
Les attributs de la classe Mot ne sont pas accessibles hors de la classe.
Question 1 : Créer la classe Mot avec :
- Un constructeur qui permet d’initialiser toutes les caractéristiques d’un mot.
- Les getters qui permettent de récupérer les caractéristiques d’un mot.
- La méthode toString() qui permet de retourner une description textuelle d’un mot.
Question 2 : Créer la classe Texte permettant de gérer des mots.
Les fonctionnalités offertes par cette classe en plus du constructeur sont :
Ajouter un mot dans un texte :
boolean ajouterMot (Mot m)
Chercher et afficher les synonymes existants dans le paragraphe d’un mot donné en
paramètre :
void chercherSynonyme (Mot m)
Calculer le nombre de phrases dans un texte sachant que le contenu de dernier mot
d’une phrase se termine par un « . »
Int nombrePhrases ()
Remplacer un mot par un synonyme s’il existe plus qu’une seule fois dans le texte.
Void Remplacer (Mot m)
Question 3. Un texte narratif est un texte caractérisé par un narrateur(String), un cadre
temporel(String) et un cadre spatial(String).
Ecrire la classe TexteNarratif qui possède les méthodes suivantes :
Un constructeur permettant d’initialiser toutes les caractéristiques du texte narratif,
Une méthode retournant un tableau contenant les indices des mots dans le texte où le
narrateur égale au contenu d’un mot dans le texte
int [] NumMots()