Vous êtes sur la page 1sur 2

Université Moulay Ismail A.

U: 2014/2015
Faculté des Sciences de Meknès Filières: SMI-5/MA-5
Département de Mathématiques et Informatique 16 Janvier 2015

Programmation Orientée Objet (Java)


Session Ordinaire Durée : 1h 30min

Exercice 1 [4 pts]

Indiquer l’affichage produit par le programme suivant :


1. class A{ 13. System.out.println(a1.f(a1)) ;
2. static int x=1 ; int y=2 ; 14. System.out.println(a1.f(a2)) ;
3. public String f(B obj) {return ("A et B") ;} 15. System.out.println(a1.f(b)) ;
4. public String f(A obj) {return ("A et A") ;} 16. System.out.println(a2.f(a1)) ;
5. } 17. System.out.println(b.f(a2)) ;
6. class B extends A{ 18. System.out.println(a2.f(b)) ;
7. public String f(B obj) {return ("B et B") ;} 19. a1.x=3 ; a2.x=4 ;
8. public String f(A obj) {return ("B et A") ;} 20. System.out.println(a1.x) ;
9. } 21. a1.y=5 ; a2=a1 ; a2.y=6 ;
10. public class Test{ 22. System.out.println(a1.y) ;
11. public static void main (String [] args){ 23. }
12. A a1=new A() ; A a2=new B() ; B b=new B() ; 24. }

Exercice 2 [8 pts]

Le directeur d’une entreprise de produits chimiques souhaite gérer les salaires de ses em-
ployés au moyen d’un programme Java.
Un employé est caractérisé par son nom, son prénom, son âge et sa date d’entrée en service
dans l’entreprise.
1. Créer une classe abstraite nommée Employe disposant :
p Des attributs nécessaires. (NB : Vous pouvez déclarer la date comme String).
p D’un constructeur prenant en paramètre l’ensemble des attributs nécessaires.
p D’une méthode abstraite calculerSalaire().
p D’une méthode affiche() pour afficher les caractéristiques d’un objet de type Employe.
2. Créer une classe nommée Technicien qui hérite de la classe Employe et disposant :
p Des attributs à savoir :
– nbrUnites : Le nombre d’unités produites mensuellement.
– FACTEUR_UNITE = 20.0.
p D’un constructeur prenant en paramètre l’ensemble des attributs nécessaires.
2

p D’une méthode calculerSalaire() retournant le salaire (le salaire vaut le nombre d’unités
produites mensuellement multiplié par 20 DHs).
p D’une méthode affiche() affichant les caractéristiques d’un objet de type Technicien.
3. Créer une classe nommée Magasinier qui hérite de la classe Employe et disposant :
p Des attributs à savoir :
– nbrHeures : Le nombre d’heures de travail mensuel.
– SALAIRE_HORAIRE = 90.0.
p D’un constructeur prenant en paramètre l’ensemble des attributs nécessaires.
p D’une méthode calculerSalaire() retournant le salaire (Ici, le salaire vaut le nombre
d’heures de travail mensuel multiplié par 90 DHs).
p D’une méthode affiche() affichant les caractéristiques d’un objet de type Magasinier.
4. Créer une classe nommée Salaires contenant la fonction main() permettant de tester les
classes Technicien et Magasinier avec les actions suivantes :
p Créer une instance de la classe Technicien et une autre de la classe Magasinier.
p Faire appel à la méthode affiche() de chaque instance pour afficher les caractéristiques de
chaque type d’employé.

Exercice 3 [8 pts]

On souhaite obtenir l’interface ci-dessous.


Compléter le programme suivant afin d’arriver au résultat souhaité.
import javax.swing.* ;import java.awt.* ;
class TestIHM{
. public static void main(String[] args){
. JPanel jp, jp1, jp2, jp3, jp4, jp5 ;
. JLabel lblNom, lblPrenom, lblCne, lblSexe, lblFiliere, lblNationalite ;
. JTextField txtNom, txtPrenom, txtCne ;
. JRadioButton jrBtnMasc, jrBtnFemi ;
. ButtonGroup gp ;
. JComboBox cboFiliere ;
. Checkbox chkMarocaine, chkEtrangere ;
. JButton btnSuivant ;
. JFrame jfr = new JFrame("Carte d’identité") ;
. jfr.setSize(400,400) ; jp = new JPanel() ;
. .... ... ... ... ... ...
. }}
N.B :Pour obtenir le résultat souhaité :
– Ajouter les composants de la ligne k dans le JPanel jpk, avec k=1,2,3,4 et 5.
– Ajouter les JPanel jpk dans le JPanel jp.
– Ajouter le JPanel jp dans la fenêtre jfr.

Bon Courage.

Vous aimerez peut-être aussi