Vous êtes sur la page 1sur 3

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

Université de Carthage
Institut supérieur des technologies de l'information et de la communication
Année universitaire : 2020/2021

Elément d’enseignement Travaux Dirigés Programmation Orientée Objet


Elaboré par Dr. Ing. Wided ABIDI
Niveaux Licence Télécommunications
Classes LT2

TD2

Exercice 1

Voici le code java de la classe affichage :

public class Ex {
int a = 0 ;
public void affiche (int a) {
System.out.println(a) ;
}
public static void main(String[] args) {
Ex p = new Ex();
Ex
p.affiche (12);
}
}

1- Qu’affiche ce programme ?
2- Dans la méthode affiche, comment faire si on veut également
galement afficher la valeur de
l’attribut a ?

Exercice 2

Trouver les erreurs que comporte ce


c programme et les expliquer.

1 class Rectangle {
2 private int longueur ;
3 private int largeur ;
4 void Rectangle (int long, int larg) {
5 longueur = =long ;
6 largeur = larg ;
7 }
8 Rectangle (int x) {
9 longueur =2*x ;
10 largeur = x
11 }
12 public int calcul_surface ( ) {
13 return (longueur*largeur) ;}
14 }
15 Rectangle r1 = new Rectangle (10,4) ;
16 Rectangle r1 = new Rectangle (10) ;
17 Rectangle r1 = new Rectangle () ;

Exercice 3
class Point {
int abscisse;
int ordonnee;
Point(){
abscisse = 0 ;
ordonnee = 0 ;
}
void set( int u , int v ){
abscisse = u ;
ordonnee = v ;
}
void translate( int u , int v ){
abscisse = abscisse + u ;
ordonnee = ordonnee + v ;}
}

1- Ajouter à la classe Point la méthode affiche, de type de retour void, de sorte que
p.affiche() affiche à l’écran l’abscisse et l’ordonnée de p.
2- Ajouter à la classe Point la méthode origine, de type de retour boolean, qui teste si les
coordonnées du point sont nulles.
3- Ajouter une méthode egale telle que p.egale(q) renvoie « true » si et seulement si les
abscisses et ordonnées des points p et q sont égaux.
4- Ecrire un deuxième constructeur de la classe Point, dont le prototype est Point ( int u ,
int v ) qui permet d’initialiser l’abscisse et l’ordonnée avec u et v.
5- Ecrire une seconde méthode set, prenant en argument un objet de la classe Point, et
qui recopie les attributs de ces arguments.
6- Ajouter à la classe Point une méthode symetrie telle que p.symetrie() renvoie un
nouvel objet Point qui représente le symétrique du point p, dans une symétrie centrale
par rapport à l’origine du repère.
7- On veut num´eroter les points au fur et `a mesure de leur création. On ajoute donc les
variables suivantes :
static int nombre ;
int numero ;
Où l’attribut numéro indique le numéro du point et où la variable de classe nombre
indique combien d’objets ont été créés.
8- Réécrire les constructeurs Point en conséquence.
9- Réécrire également la méthode affiche pour observer la valeur de ces nouveaux
attributs.

Exercice 4

1. Ecrire un programme java qui lit trois notes à partir du clavier, calcule et affiche la
moyenne de ces notes. En fin, il affiche la mention correspondante :
o"Bien" Si la moyenne est >12.
o"Passable" Si la moyenne est comprise entre 10 et 12.
o"Non admis" Si la moyenne est <10.
2. Ecrire un programme qui détermine si un nombre entier est pair ou impair.
3. Écrivez un programme qui demande à l'utilisateur son sexe (M et F) et son Nom et
affiche un message de bienvenue approprié.

Exercice 5
Ecrire les classes nécessaires au fonctionnement du programme suivant (en ne fournissant que
les méthodes nécessaires à ce fonctionnement). N'oubliez pas de commenter votre code :

1. public class TestMetiers {


2. public static void main(String[] argv) {
3. Personne[] personnes = new Personne[3];
4. personnes[0] = new Menuisier("Paul");
5. personnes[1] = new Plombier("Jean");
6. personnes[2] = new Menuisier("Adrien");
7. for (int i = 0; i < personnes.length; i++)
8. personnes[i].affiche();
9. }
10. }

Exercice 6

1. Définir une classe Stagiaire avec les attributs suivants : nom et prénom.
2. Définir un constructeur permettant d’initialiser les attributs d'un objet stagiaire par
des valeurs saisies par l’utilisateur.
3. Définir la méthode toString ( ) permettant d’afficher les informations d'un stagiaire.
4. Écrire un programme testant la classe Stagiaire.
o Déclarer une collection d'objet stagiaire.
o Ajouter des stagiaires dans la collection.
o Afficher la liste des stagiaires.
5. Modifier la classe de teste pour afficher la liste des stagiaires triée dans un ordre
alphabétique des noms, si des stagiaires ont le même nom, ils seront triés en ordre
alphabétique des prénoms.
o Exemple :
 Amami Mohamed
 Mahjoub Mostafa
 Mahjoub Rimel
 Mahjoub Wissal

Vous aimerez peut-être aussi