Академический Документы
Профессиональный Документы
Культура Документы
enseignants et tudiants
Universit Paris Sud
Prambule
Cette suite dexercices a pour but de passer en revue les notions orientes objet les
plus simples du langage. La rdaction utilise volontairement le vocabulaire ddi. Il est
plus que conseill de vous reporter au notes de cours qui vous ont t distrribues ainsi
qu laide sur les API Java.
Exercice 1
Nous allons crer deux classes, lune reprsentant une personne, nomme Personne
et lautre pour contenir le main, nomme PersonneMain.
1. Constructeur exhaustif.
a) Crer la classe nomme PersonneMain, publique (avec le mot cl public devant class), ne comportant pas de champ et comportant une unique mthode
main() de signature
public static void main(String args[])
Au sein de cette mthode, crer, laide de loprateur new une instance dobjet de type Personne (voir la description de la classe Personne ci-dessous)
et appeler sa mthode afficher().
On rappelle quun fichier source java peut contenir au plus une classe publique
et que, si cest le cas, le nom du fichier doit correspondre (y compris les majuscules/minuscules) au nom de la classe publique.
b) Crer une classe, nomme Personne, non publique (sans le mot cl public
devant class), contenant 2 champs :
un champ nom de type String, et
un champ age de type primitif int.
Crer un constructeur exhaustif (c..d. initialisant tous les champs), de signature
Personne(String leNom, int lAge)
initialisant les deux champs de la classe leNom et lAge.
1
Exercice 2
Exercice 3
Exercice 4
Supposons que la classe Personne fasse partie dune biliothque que vous distribuez et que vous vouliez obliger les programmeurs qui conoivent des classes hritant de
Personne (telles Enseignant et Etudiant) munir ces dernires de certaines mthodes.
1. Rendre la classe Personne abstraite (par le mot cl abstract devant class).
2. Dclarer une mthode abstraite, ne retournant rien (cest--dire void), sans arguments, nomme afficherType().
3. La mthode afficher() de Personne va affectuer laffichage dcrit en question
1c de lExercice 1, puis va faire appel afficherType().
4. Les classes Enseignant et Etudiant hritent de la classe abstraite Personne
et ne sont pas abstraites. Leur constructeur doit donc faire appel la mthode
createPersonne() (puisquil ny a plus de constructeur de Personne).
La mthode afficherType() dans la classe Enseignant (resp. dans la classe
Etudiant) neffectue quune chose : afficher la chane Enseignant (resp. la chane
Etudiant).
5. Adapter les classes Enseignant et Etudiant.
De cette manire, toute classe hritant de Personne doit ncessairement implanter la mthode afficherType(). Laffichage est dlgu aux sous types concrets de Personne.