0% ont trouvé ce document utile (0 vote)
14 vues15 pages

Correction Exam Java

Le document décrit la création de classes Java pour modéliser des personnes, des employés, des chefs et des directeurs, ainsi que la gestion de produits avec des méthodes pour saisir et afficher des informations. Il inclut également des exemples de tableaux statiques et de listes dynamiques en Java, ainsi que des instructions pour parcourir ces structures. Enfin, il mentionne des exercices pratiques pour appliquer ces concepts dans un contexte d'examen.

Transféré par

Salah Aznidi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
14 vues15 pages

Correction Exam Java

Le document décrit la création de classes Java pour modéliser des personnes, des employés, des chefs et des directeurs, ainsi que la gestion de produits avec des méthodes pour saisir et afficher des informations. Il inclut également des exemples de tableaux statiques et de listes dynamiques en Java, ainsi que des instructions pour parcourir ces structures. Enfin, il mentionne des exercices pratiques pour appliquer ces concepts dans un contexte d'examen.

Transféré par

Salah Aznidi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

CORRECTION EXAM JAVA

Soit les classes suivantes :

• Une classe Personne qui comporte trois champs privés, nom, prénom et date de naissance.
Cette classe comporte un constructeur pour permettre d'initialiser les données. Elle comporte également une
méthode polymorphe Afficher pour afficher les données de chaque personne.
• Une classe Employé qui dérive de la classe Personne, avec en plus un champ Salaire accompagné de sa
propriété, un constructeur et la redéfinition de la méthode Afficher.
• Une classe Chef qui dérive de la classe Employé, avec en plus un champ Service accompagné de sa propriété,
un constructeur et la redéfinition de la méthode Afficher.
• Une classe Directeur qui dérive de la classe Chef, avec en plus un champ Société accompagné de sa propriété,
un constructeur et la redéfinition de la méthode Afficher.

1. Écrire les classes Personne, Employé, Chef et Directeur.

Créez un programme de test qui comporte tableaux d'objets ArrayList de quatre personnes avec trois employés,
deux chefs et un directeur (8 références de la classe Personne dans lesquelles ranger 5 instances de la classe
Employé, 2 de la classe Chef et 1 de la classe Directeur).
Affichez l'ensemble des éléments des tableaux

Personne

Employe
Chef

Directeur

Main
import [Link];

Excercice Listes des produits


Une classe Product qui comporte les champs privés :

• code (entier)
• des (chaîne de caractères : désignation)
• type (entier : 1, 2 ou 3)
• qte (entier : quantité)
• price (réel : prix unitaire)

Cette classe comporte :


1. Un constructeur par défaut et un constructeur paramétré.
2. Une méthode saisie() qui permet de saisir les informations d’un produit au clavier.
3. Une méthode valoriser() qui retourne la valorisation du produit : qte * price.
4. Une méthode afficher() qui affiche toutes les informations du produit + sa valorisation.

• Écrire la classe Product avec tous les champs et méthodes demandés.


• Écrire un programme Main qui :

• Déclare un tableau de 4 produits.


• Saisit les 4 produits.
• Affiche les 4 produits.
• Calcule et affiche :
o la valorisation totale de tous les produits,
o la valorisation totale par type (Type 1, Type 2, Type 3).

Produit
Main
import [Link];

RESUME DE COURS
1) Tableau statique (Array) — “taille fixe”
Un tableau en Java a une taille fixe dès la création.
• Product[] products = new Product[4]; // taille fixe = 4
• Accès direct par index : products[i]
for (int i = 0; i < [Link]; i++) {
products[i].afficher();
}
Ou
for (Product p : products) {
[Link]();
}
2)Liste dynamique (ArrayList) — “taille variable”
ArrayList est une structure dynamique : elle grandit/réduit.

import [Link];
ArrayList<Product> list = new ArrayList<>();

• Ajouter : [Link](p)

• Lire : [Link](i)

• Modifier : [Link](i, newValue)

• Supprimer : [Link](i) ou [Link](obj)

• Taille : [Link]()

• Tester vide : [Link]()

Exemple :

Scanner sc = new Scanner([Link]);

ArrayList<Product> products = new ArrayList<>();

for (int i = 0; i < 4; i++) {

Product p = new Product();

[Link](sc);

[Link](p);

3) Tableau d’objets vs Liste d’objets


Tableau d’objets
Product[] t = new Product[4];
t[0] = new Product(...);
Liste d’objets
ArrayList<Product> t = new ArrayList<>();
[Link](new Product(...));
4) Parcourir une ArrayList
A) for classique (index)
for (int i = 0; i < [Link](); i++) {
Product p = [Link](i);
[Link]();
}
B) For each
for (Product p : products) {
[Link]();
}
C ) Iterator
Un Iterator permet de parcourir une collection élément par élément.
import [Link];
Iterator<Product> it = [Link]();
while ([Link]()) {
Product p = [Link]();
[Link]();
}

• hasNext() : est-ce qu’il reste un élément ?

• next() : retourne l’élément suivant (et avance)

5) Tableau 2D (2 dimensions) — “matrice”

Un tableau 2D = lignes + colonnes.

int[][] m = new int[3][4]; // 3 lignes, 4 colonnes

Accès : m[0][0] = 10; // ligne 0 colonne 0

Parcours :

for (int i = 0; i < [Link]; i++) { // lignes

for (int j = 0; j < m[i].length; j++) { // colonnes

[Link](m[i][j] + " ");

[Link]();

}
Exam 2024-2025

1. Classe Batiment
2. Classe Maison
3. Classe Immeuble
4. Classe TestBatiment (Main)
Exam Cours Initial

Produit
Main

Vous aimerez peut-être aussi