DUREE : 2H
EXERCICE I : QCM (Une seule bonne réponse par question)
1. Lequel de ces opérateurs est utilisé comme opérateur de concaténation en Java ?
A) += B) -- C) | | D) +
2. A qui devons-nous le langage de programmation Java ?
A) Guido Van Rossum et Stephen R. Bourne B) Ken Thompson et Dennis Richtie
C) James Gosling et Patrick Naughton D) Bjarne Stroustrup et Gary Grossman
3. A quel Package appartient la Classe Scanner ?
A) [Link] B) [Link] C) [Link] D) [Link]
4. Quelle est la sortie du code suivant ?
int a = 5;
int b = 10;
[Link]((a < b) ? "A est plus petit" : "B est plus petit");
A) false B) A est plus petit C) B est plus petit D) ERROR BUILD FAILED
5. Quelle méthode est utilisée pour obtenir la taille d’un tableau en Java ?
A) [Link]() B) [Link]() C) [Link] D) [Link]()
6. Dans une méthode, que signifie le mot-clé this ?
A) Il représente l’objet actuel. B) Il représente la classe actuelle
C) Il représente une variable locale D) Il représente une méthode statique
7. Lequel des choix suivant est une classe immuable en Java ?
A) StringBuilder B) String C) ArrayList D) HashMap
Page 1 sur 3
8. Quelle est la sortie du code suivant ?
class Tableau {
public static void main(String args[])
{
int tab [] = new int[10];
for (int i = 0; i < 10; ++i)
{
tab [i] = i;
[Link](tab [i] + " ");
i++;
}
}
}
A) 0 2 4 6 8 B) 1 2 3 4 5 C) 1 2 4 6 8 D) 0 2 3 6 8
9. Comment trier un tableau ?
A) [Link]() B) [Link]() C) [Link]() D) [Link]()
10. Lequel des éléments suivants n’est pas un concept POO en Java?
A) Encapsulation B) Polymorphisme C) Prototypage D) Héritage
Page 2 sur 3
EXERCICE II
Considérons une classe Java appelée MaDate ayant les trois attributs suivants :
• jour : un attribut privé de type entier.
• mois : un attribut privé de type entier.
• année : un attribut privé de type entier.
1. Créez la classe MaDate
2. Redéfinissez la méthode toString() afin que nous puissions afficher une date sous le format
jour/mois/année.
3. Générez (ou écrivez) les getters et setters des trois attributs.
4. Définissez un constructeur avec trois paramètres MaDate(int jour, int mois, int année)
5. Écrivez la méthode ajouterUnJour qui permet d’ajouter un jour à notre date et faire des
modifications, si nécessaire, pour les deux attributs mois et année. Attention, il faut traiter
tous les cas. Par example si les trois attributs jour, mois et année contiennent respectivement
les valeurs 31, 12 et 2016, alors la méthode ajouterUnJour doit affecter la valeur 1 à jour,
1 à mois et 2017 à année. Et s’ils contiennent 28, 02 et 2018 alors les nouvelles valeurs après
modification seront respectivement 29, 02 et 2018.
6. Utilisez la méthode de la question précédente pour écrire la méthode
ajouterPlusieursJours(int n) : n étant le nombre de jours à ajouter à la date enregistrée dans les
trois attributs.
7. D’une façon similaire, définissez les méthodes ajouterUnMois() et ajouterUnAn().
8. Dans la méthode main, testez toutes les méthodes réalisées dans les questions précédentes.
Page 3 sur 3