Vous êtes sur la page 1sur 39

Examen Curs 1 (programmeur Java)

1. Quel programme doit-il être exécuté lors de l'exécution d'un fichier de classe Java ?
a. le compilateur Java
b. la machine virtuelle Java
c. la JVM ou un émulateur équivalent
d. la décompression du pot
e. pas de réponse

2. Quelle sera la valeur de x, y, z après l’exécution du code suivant ?


entier x = 2 ;
entier y = 2 ;
int z = (((x++) + (++y)) > 5 && ((x++)+y) < 10) ? dix;
a. x : 3, y : 4, z : 1
b. x : 3, y : 3, z : 0
c. x : 4, y : 4, z : 1
d. x : 5, y : 5, z : 1
e. x : 4, y : 3, z : 1
f. x : 2, y : 2, z : 0
g. pas de réponse

3. Quel est le plus petit type de données Java qui stockera correctement la valeur 135 ?
a. court
b. booléen
c. flotter
d. octet
e. long
f. pas de réponse
4. Lorsqu'une classe Java publique est stockée dans un fichier de code source Java, que doit être
vrai concernant le nom du fichier source par rapport au nom de la classe ?
a. les noms doivent être les mêmes, mais la casse n'a pas d'importance b. les noms
doivent commencer par la même lettre
c. les noms doivent être différents
d. les noms doivent correspondre exactement, y compris la casse
e. pas de réponse

5. Quelle plateforme Java est dédiée aux appareils portables aux ressources limitées ?
a. JavaXE
b. JavaEE
c. JavaME
d. JavaSE
e. pas de réponse

6. Comment un littéral String doit-il être représenté dans le code source Java ?
a. entouré de « (guillemets doubles)
b. entouré de « (guillemets doubles) ou » (guillemets simples)
c. entouré de ` (guillemets arrière)
d. entouré de ' (guillemets simples)
e. pas de réponse
7. Quels outils sont nécessaires pour créer et exécuter un programme Java ? (Choisissez trois)

a. Windows 98 ou supérieur

Page1 du 39
b. une JVM
c. un compilateur
d. un éditeur
un interpréteur DOS

8. Parmi les éléments suivants, lesquels sont des littéraux de caractères valides ? (choisissez
deux)
a. 'E'
b. "\u000E"
c. '\u000E'
d. '000E'
e. '\u0x0045'

9. Étant donné la déclaration de variable suivante String s = « Some value » ; qu'est-ce qui est
stocké dans l'emplacement mémoire référencé par la variable s ?
a. le caractère S (le premier caractère de la chaîne)
b. un moyen d'atteindre l'emplacement où la chaîne Some Value est stockée
c. la liste des caractères qui composent la chaîne
d. le caractère « (le premier caractère de la chaîne)
e. pas de réponse

10. Parmi les éléments suivants, lesquels sont utilisés pour demander à un programme d'effectuer
des calculs mathématiques ou de tester des données ?
a. les opérateurs
b. ponctuation
c. mots clés
d. identifiants
e. pas de réponse

11. Quels outils un IDE utilise-t-il et qui sont également utilisés lors de la création d'un programme
Java à partir de la ligne de commande ? (choisissez deux)
a. invite de commande
b. javac
c. bloc-notes
d. interface utilisateur graphique
e. JVM
12. Lequel des éléments suivants interprète le code d'octet dans le langage spécifique de la
machine ?
a. JVM
b. Compilateur Java
c. compilateur de bytecode
d. Code source Java
e. pas de réponse

13. Si un programmeur a besoin du compilateur Java, quel logiciel doit-il installer ?

a. un IDE comme NetBeans ou Eclipse, car le compilateur Java fait partie d'un IDE, pas un
composant distinct
b. JDK
c. rien; Java est indépendant de la plate-forme, le compilateur est donc inclus par défaut
dans tout système d'exploitation
d. JRE
e. pas de réponse

14. Lequel des éléments suivants n’est PAS un type de données Java primate ?
a. booléen

Page2 du 39
b. int
c. Chaîne
d. carboniser
e. flotter
f. pas de réponse
15. Lequel des programmes utilitaires JDK suivants est utilisé pour compiler un fichier de code
source Java en bytecode ?
a. pot
b. javadoc
c. Java
d. javac
e. pas de réponse

16. Quel est le suffixe d’un fichier de byte code Java ?


a. .jvm
b. .SMS
c. .Java
d. .classe
e. .cls
f. pas de réponse
17. Laquelle des tâches suivantes sera correctement compilée ? (choisissez deux)
a. char c = '\u0020';
b. court s = 70 000 ;
c. booléen b = 0 ;
d. longue L = 12L ;
e. flotteur f = 1,2 ;
18. La machine virtuelle Java (JVM) traduit et exécute le code stocké dans quel type de fichiers ?
a. Fichiers .javac
b. Fichiers .java
c. fichiers .classe
d. Fichiers .code
e. pas de réponse

19. Que se passera-t-il lorsqu'un programmeur Java aura compilé avec succès une classe Java
nommée Test à l'aide d'une ligne de commande et émettra ensuite la commande suivante ?
java Test.class
Supposons que le fichier de code d’octet réside dans le répertoire actuel.
a. une erreur s'affichera, car un nom de classe ne doit pas commencer par une lettre
majuscule
b. la classe se déroulera avec succès
c. une erreur s'affichera, car l'extension .class n'aurait pas dû être spécifiée dans le cadre
de la commande
d. une erreur s'affichera, car l'extension du fichier doit être .java au lieu de . classe lors de
l'exécution d'un Java .class
e. pas de réponse

Page3 du 39
20. Que doit contenir une définition de classe Java pour pouvoir s'exécuter ?
a. un nom de classe commençant par une lettre minuscule
b. une fonction start()
c. au moins une expression qui implique des opérateurs
d. au moins une définition de variable
e. une fonction main() avec une certaine signature
f. pas de réponse
21. Laquelle des expressions suivantes produira une valeur de type String ? (Choisissez trois)
un. 5+6+7
b. 5+"6"+7
c. 5+6+'7'
d. 5+6+"7"
e. 5+'"'+7
F. 5+(6+”7”)
22. Parmi les éléments suivants, lesquels ne sont PAS des littéraux entiers Java valides dans
Java version 7 et ultérieure ? (choisissez deux)
un. "10001
b. 0b1001 c.10_01
d. 0x1001
e. -1001
F. 0e1001
23. Parmi les éléments suivants, lequel est la partie indépendante de la machine utilisée dans
l'exécution d'un programme Java ?
a. javac.exe
b. JVM
c. bytecode
d. navigateur Internet
e. pas de réponse

24. Quelle séquence décrit le mieux les étapes physiques suivies par le programmeur pour

a. Écrire le programme
Compiler le programme
Exécuter le programme
b. Écrire le programme
Traduire en code natif
Compiler le byte code
Exécuter le programme
e. pas de réponse

c. Écrire le programme
Compiler en bytecode
Traduire en code natif
Exécuter le programme
d. Écrire le programme
Compiler en bytecode
Exécuter le programme

produire un programme Java en cours d'exécution ?


25. Quel type de données Java peut stocker une lettre, un chiffre ou un signe de ponctuation,
mais est perçu comme numérique par le compilateur et la JVM ?
a. octet
b. booléen
c. Chaîne

Page4 du 39
d. carboniser
e. pas de réponse
26. Une classe Java doit pouvoir être exécutée. Lesquels des éléments suivants sont inclus dans
la signature de la fonction qui doit être insérée dans la définition de classe ? (Choisissez trois)
un. statique B. publique c. finale d. annuler e. privé f. int

Examen Curs 2 (programmeur Java)


1. Lequel des éléments suivants est un type de données d’index valide pour accéder aux
membres d’un tableau ?
a. double
b. booléen
c. int
d. Chaîne
e. pas de réponses

2. Que doit être vrai de la longueur d’un objet tableau une fois qu’il a été instancié ?

a. la longueur d'un tableau est variable, en fonction des besoins du programme


b. la longueur d'un tableau est un attribut final en lecture seule qui ne peut pas être modifié
c. la longueur d'un tableau est déterminée lors de l'exécution du programme, après la
création de l'objet tableau
d. la longueur d'un tableau dépend de la quantité de mémoire disponible
e. pas de réponse

3. Quelle instruction créera un tableau de type pf double qui contiendra les nombres 5,2, 7,0 et -
2,5 ?
a. liste double[] = [5.2, 7.0, -2.5]
b. liste double[3] = {5,2, 7,0, -2,5}
c. liste double[] = tableau(5.2, 7.0, -2.5)
d. liste double[] = {5.2, 7.0, -2.5}
e. pas de réponse

4. Que se passe-t-il lorsqu'un tableau d'objets est créé ?

a. le tableau contient des objets du type spécifique initialisés à null ou 0


b. le tableau contient des objets du type spécifique créé précédemment dans le
programme
c. le tableau contient des références à des objets du type spécifié créés précédemment
dans le programme
d. le tableau contient des emplacements pour les références aux objets du type spécifié
e. pas de réponse

5. En utilisant la déclaration de tableau ci-dessous, quelle est la valeur de t.length ?

int[][] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};

a. 4
b. 12

c. 1
d. 3
pas de réponse

Page5 du 39
6. Quel terme fait référence au stockage de valeurs dans un tableau ?

a. annulation
b. polymorphing
c. affectation
d. peuplement
e. pas de réponse

7. Qu'est-ce qui est combiné avec un identifiant de tableau pour fournir une référence à un seul
élément du tableau ?

a. valeur primitive
b. valeur de l'indice
c. valeur du tableau
d. valeur variable
e. pas de réponse

8. Que retournera Arrays.copyOfRange(t, 1, 3) si le tableau t a la définition ci-dessous ?

char[] t = {'a', 'b', 'c', 'd', 'e'};

a. un tableau contenant a et b
b. un tableau contenant c et d
c. un tableau contenant b et c
d. un tableau contenant b, c et d
e. pas de réponse

9. Considérez le code ci-joint. Que contient chaque élément du tableau lorsque les instructions
sont exécutées ?

classe WhatIsStored
{
public static void main (String s[ ])
{
nombres int[ ];
nombres = nouveau int[2];
}
}

a. 0
b. 2
c. \u000
d. 2.0
e. pas de réponse

10. Laquelle des structures de contrôle de flux Java suivantes pourrait être utilisée pour exécuter
de manière répétée un bloc d'instructions ? (Choisissez trois)

a. faire pendant
b. alors que
c. pour
d. si
e. changer

11. Compte tenu des déclarations de tableau ci-dessous, laquelle des affectations suivantes sera
correctement compilée et ne produira aucune erreur d'exécution ? (Choisissez trois)
int[] a = {3, 1, 7};
int[][] b = {{1, 5}, {6}, {3, 0}};
int[][][] c = {{{1, 2}, {3}}, {{4}}, null, {{5,6}, null}}} ;

a. c[2][1] = b[2];

Page6 du 39
b. c[2] = b;
c. c[0][a[1]] = b[c.longueur/2];
d. b[1] = une[2];
e. b[1] = une;
f. c[0][0] = une[1];

12. Combien de fois la boucle suivante sera-t-elle exécutée ?

int je = 2;
faire{
je+=je;
}pendant que ( je < 10 );

a. 2
b. 0
c. 3
d. 4
e. 1
f. pas de réponse

13. Comment un tableau Java nommé arr déjà plein peut-il être étendu pour accueillir un nouvel
élément ?
a. une fois créé, un tableau Java ne peut pas être étendu
b. arr.longueur++;
c. Arrays.extend(arr, arr.length, arr.length+1);
d. attribuez simplement la nouvelle valeur de la variable arr[arr.lengrth+1]
e. pas de réponse

14. Quel est l'index du dernier élément d'un tableau ?

a. le nombre spécifié comme dernier élément


b. la taille du tableau moins un
c. la taille du tableau
d. l'index sur le nombre d'octets utilisés par chaque élément
e. pas de réponse

15. Laquelle des valeurs suivantes pourrait être utilisée pour initialiser la variable c afin que le
code suivant affiche « I love Java » ? (choisissez deux)
je ne a = 6;
entier b = 9 ;
int c = ?;
si (ac<0){
if(bc>0) System.out.println("J'aime Java");
else System.out.println(«J'aime davantage le C++»);
} autre {
System.out.println(«…mais il y a toujours PHP…»);
}

a. 9
b. 7
c. 10
d. 6.9
e. 8
16. Parmi les énoncés suivants, lesquels sont vrais concernant les sections de l'instruction for en
Java ? (Choisissez trois)
pour( section1; section2; section3){ }
a. section3 est exécuté au début de chaque itération
b. la section1 est exécutée une fois

Page7 du 39
c. section1 est exécuté au début de chaque itération
d. section2 est évalué au début de chaque itération
e. section3 est exécuté à la fin de chaque itération
f. la section 2 est évaluée à la fin de chaque itération
17. Qu'est-ce qui s'affiche lorsque le programme est exécuté ?
Classe publique ArrayTest
{
public static void main(String s[])
{
int intArray[] = {0, 4, 2, 5, 3};
char charArray[] = {'H', 'B', 'R', '2'};
double dbArray[] = {3,4, 4,5, 2,0, 5,3, 3,1, 8,2, 9,0} ;
System.out.println ("Le résultat est : " + dbArray[intArray[2]] +
intArray[charArray[3]]);
}
}

un. l'exception "ArrayIndexOutOfBoundsException" est levée


18. Quel est l’élément à l’index 3 dans le tableau de caractères ?

'H' ‘0' 'UN' ‘5’ ‘3'

a. ‘3’
b. 'H'
c. 'UN'
d. ‘5’
e. pas de réponse

19. Lors de l'utilisation de switch(expr) dans Java >=7, le type de données de expr peut être l'un
des suivants, SAUF :
a. octet
b. long
c. court
d. Chaîne
e. int
f. carboniser
g. pas de réponse
20. Quel est le résultat affiché du programme affiché ?

Page8 du 39
un. 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, b. 1,0, 4,0, 9,0, 16,0, 25,0, 36,0, c. 1,0, 2,0, 3,0, 4,0, 5,0,
6,0, d. 4,0, 8,0, 12,0, 16,0, 20,0, 24,0, par exemple. pas de réponse

Examen Curs 3 (programmeur Java)


1. Parmi les énoncés suivants, lesquels sont vrais à propos du constructeur de classe ?
(Choisissez trois)
a. il ne peut pas être surchargé
b. son nom doit correspondre exactement au nom de la classe
c. il doit avoir un type de retour vide
d. une classe contient toujours un constructeur, même si le programmeur n'en fournit pas
e. il a toujours des arguments, car il doit être utilisé pour initialiser les attributs
f. il est automatiquement appelé par la machine virtuelle lors de l'instanciation d'un objet
2. Lequel des énoncés suivants décrit le processus de masquage des informations d’un objet ?
a. encapsulation
b. obscurcissement
c. construction
d. mutation
e. instanciation
3. Veuillez choisir la réponse qui correspond au niveau Acmes de chaque membre de la classe
avec sa description correcte :
a. le membre de la classe n'est accessible qu'aux méthodes de la classe
b. le membre de la classe n'est accessible qu'aux classes portant le même nom que la
classe qui déclare le membre
c. le membre de la classe n'est accessible qu'aux classes du même package que la classe
qui déclare le membre
d. l'accès au membre du groupe est illimité
1. publique 3. privé

Page9 du 39
2. défaut 4. protégé
a. 1-d, 2-c, 3-a, 4-c
b. 1-a, 2-b, 3-c, 4-d
c. 1-d, 2-c, 3-a, 4-b
d. 1-d, 2-c, 3-a, 4-a
e. pas de réponse

4. Quel terme fait référence aux données que contient un objet ?


a. attribut
b. niveau d'accès
c. modificateur
d. méthode
e. pas de réponse

5. Quel terme décrit une entité résidente en mémoire contenant à la fois des données et des
instructions que les données peuvent manipuler ?
a. objet
b. attribut
c. encapsulation
d. classe
e. méthode
f. Type de données
g. pas de réponse

6. Lequel des énoncés suivants décrit le mieux l’objectif d’une méthode mutatrice ?
a. un mutateur est une méthode objet pour créer et renvoyer un nouvel objet du même
type
b. un mutateur permet au programmeur de surcharger le comportement d'une classe
c. un mutateur permet au programmeur de modifier la référence de l'objet à un autre objet
du même type de données
d. un mutateur fournit un moyen standard et sûr de modifier la valeur d'un attribut d'objet
e. pas de réponse

7. Parmi les énoncés suivants, lesquels sont vrais concernant les attributs contenus dans une
définition de classe ? (Choisissez trois)
a. lors de l'accès à un attribut depuis l'extérieur de sa définition de classe, la syntaxe
reference.attributeName doit être utilisée
b. l'entrepreneur est le seul moyen d'initialiser les attributs
c. les attributs sont toujours accessibles depuis l'extérieur de leur définition de classe,
étant donné qu'il existe une référence à un objet de classe
d. les attributs sont accessibles depuis l'intérieur de leurs méthodes de classe à
l'aide de modificateurs d'accès
e. les attributs de classe peuvent être rendus inaccessibles aux méthodes de classe
à l'aide de modificateurs d'accès
f. chaque objet a son propre ensemble (copie) des attributs de classe
8. Parmi les avantages suivants, lesquels sont les avantages de l'encapsulation ? (choisissez
deux)
a. l'encapsulation élimine le besoin de méthodes getter et setter, minimisant ainsi le
nombre de méthodes qu'une classe doit avoir
b. les données de l'objet peuvent rester valides en les masquant dans l'objet et en validant
toutes les données entrantes à l'aide de méthodes
c. le programmeur d'une classe peut créer plusieurs méthodes portant le même nom dans
la même classe
d. le programmeur d'une classe peut modifier l'implémentation interne de la classe tant
que ses membres accessibles au public restent et agissent de la même manière

Page10 du
39
9. Quel terme décrit ce que les objets peuvent faire ?
a. attribut
b. Type de données
c. méthode
d. modificateur d'accès
e. qualificatif
f. pas de réponse
10. Lequel des énoncés suivants n'est PAS un moyen valide d'appeler le constructeur par défaut
d'une classe Java nommée Test ?
a. directement, depuis un autre constructeur de classe Test, en utilisant this()
b. indirectement, depuis l'extérieur de la classe test, en instanciant un objet à l'aide de new
Test()
c. directement, depuis l'extérieur de la classe Test, en utilisant la syntaxe t1.Test(), où t1
est une référence à un objet de type Test
d. indirectement, en instanciant un objet dans une méthode d'une classe Test, en utilisant
new Test()
e. pas de réponse

11. Quelles paires de signatures de méthode affichent des méthodes correctement surchargées ?
(choisissez deux)
a. float calcAnswer (int numA, float numB)
float calcResult(int numA, float numB
b. float calcResult (float numA, int numB, int numC)
int calcResult (float numA, int numB)
c. float calcResult (int numA, float numB)
int calcResult(int numB, float numC)
d. float faire quelque chose (int numA)
float faire quelque chose (booléen numA)
12. Lequel des énoncés suivants décrit le mieux le concept d’encapsulation dans les langages
orientés objet ?
a. un garbage collector détruit tous les objets qui ne sont plus référencés et les encapsule
au fur et à mesure de leur destruction
b. les méthodes pour manipuler les données sont fournies dans la classe avec les
données, de sorte que les données sont manipulées de manière prévisible
c. les données sont disponibles gratuitement ; l'application n'a aucune difficulté à
accéder aux données dont elle a besoin
d. une méthode peut être écrite de plusieurs manières dans la même classe tant que les
signatures sont différentes
e. pas de réponse

13. Qu’est-ce qui est vrai dans le fait d’avoir la définition ci-dessous ? (Choisissez trois)
vide f(char…c){
//corps de la méthode
}

a. la méthode peut être appelée avec 1 ou plusieurs arguments de différents types de


données ; le premier argument doit être de type char
b. cette définition n'est valable qu'à partir de Java 5
c. à l'intérieur de la méthode, la variable c sera un tableau
d. si aucun argument n'est fourni lors de l'appel de la méthode, c aura une valeur null à
l'intérieur de la méthode
e. la méthode peut être appelée avec 0 ou plusieurs arguments de type char
f. la méthode peut être appelée avec 0 ou plusieurs arguments de différents types de

Page11 du
39
données ; au moins l'un d'entre eux doit être de type char
14. Qu'est-ce qui est exigé de la valeur renvoyée par la ou les instructions return d'une méthode ?
a. il doit être compatible avec l'affectation avec le type de retour dans la définition de la
méthode
b. ce doit être l'un des arguments passés à la méthode
c. il doit correspondre à la liste d'arguments
d. elle doit avoir le même nom de variable que les arguments
e. pas de réponse

15. Parmi les mots suivants, lesquels sont des mots-clés Java qui agissent comme des
modificateurs d'accès et peuvent être utilisés pour la définition d'un membre de classe ?
(Choisissez trois)
a. défaut
b. publique
c. privé
d. mondial
e. commun
f. protégé
16. Étant donné la définition de classe suivante, choisissez la réponse qui montre les définitions
correctes des getters et setters pour les attributs de la classe :

classe USImmigrant{
Nom de la chaîne ;
terroriste booléen;
}

a. public void getName()


public void isTerrorist()
public void setNume (Chaîne n)
public void setTerrorist (booléen b)
b. public void getName (Chaîne n)
public void isTerrorist (booléen b)
chaîne publique setName (chaîne n)
ensemble booléen public Terroriste (booléen b)
c. chaîne publique getName (chaîne n)
public booléen getTerrorist (booléen b)
chaîne publique setName (chaîne n)
ensemble booléen public Terroriste (booléen b)
d. public booléen getName()
public booléen isTerrorist()
public String setName (booléen n)
ensemble booléen publicTerrorist(String t)
e. chaîne publique getName()
public booléen isTerrorist()
public void setName (Chaîne n)
public void setTerrorist (booléen b)
f. pas de réponse
17. Comment supprimer un objet créé en Java ?

a. en appelant manuellement la méthode finalize() de l'objet


b. par le garbage collector Java
c. en utilisant un destructeur de classe
d. Les objets Java ne sont détruits que lorsque l'application existe
e. pas de réponse

Page12 du
39
18. Parmi les éléments suivants, lesquels sont considérés comme membres d’une classe Java ?
(choisissez deux)
a. méthodes
b. les attributs
c. qualificatifs
d. arguments
e. types de retour
f. modificateurs

19. Quelle est la raison pour laquelle on écrit une méthode surchargée ?

a. pour fournir à l'utilisateur de la méthode d'autres moyens d'appeler la méthode en


fonction du type de données que l'utilisateur souhaite fournir à la méthode
b. pour permettre à l'utilisateur de la méthode de changer le nom des arguments lors de
l'appel de la méthode
c. pour permettre à la même tâche d'être appelée par des noms différents
d. pour permettre à la même méthode de renvoyer une variété de types de données
e. pas de réponse

20. Étant donné le morceau de code suivant, comment method2() peut-il être invoqué à la ligne
3 ? (choisissez deux)

Examen Curs 1 (programmeur Java).....................................................................................................1


Examen Curs 2 (programmeur Java).....................................................................................................5
Examen Curs 3 (programmeur Java).................................................................................................9
Examen Curs 4 (programmeur Java)...............................................................................................14
Examen Curs 5 (programmeur Java)...............................................................................................20
Examen Curs 6 (programmeur Java)...............................................................................................26
Examen Curs 7 (programmeur Java)...............................................................................................32

a. Méthodes.method2()
b. cette->méthode2()
c. méthode2()
d. cette.méthode2()
e. méthode1().méthode2()

21. Compte tenu de la définition de la méthode ci-dessous, quel type de données le programmeur
peut-il renvoyer de la méthode ?
longue f(){
//corps de la méthode
}

a. long seulement
b. octet, court, entier, long, booléen, chaîne
c. octet, court, int, long, caractère
d. tout type primitif numérique
e. pas de réponse

22. Qu'est-ce qu'un cours ?


a. un identifiant d'objet
b. la spécification d'un nouveau type de données
c. une référence d'objet
d. une instance spécifique d'un objet
e. pas de réponse

Page13 du
39
23. Le processus de création d'un objet basé sur une définition de classe s'appelle :
a. encapsulation
b. contrôle d'accès
c. instanciation
d. surcharge
e. collecte des ordures
f. pas de réponse
24. Qu'affichera le code suivant une fois exécuté ?
Test de classe{
entier x ;
méthode void1(int x){
x=8 ;
méthode2(this.x);
}

void method2(int x){ x++;


}

public static void main(String[] s)


{
Test t = nouveau Test();
t.method1(4);
System.out.println(tx);
}
}

a. 0
b. 9
c. 1
d. 8
e. 4
f. pas de réponse
25. Que DOIVENT contenir toutes les définitions de méthodes ?
a. un quantificateur et un type de retour
b. un nom et un argument
c. un nom, un type de retour et une liste d'arguments
d. un nom et un type de retour
e. un qualificatif et un argument
f. pas de réponse

Examen Curs 4 (programmeur Java)

1. Parmi les énoncés suivants, lesquels sont vrais concernant l'attribut maxLength de la classe
Question ci-dessous ? (Choisissez trois).
Question de classe{
public static int maxLength;
}

a. chaque objet de la classe possède son propre attribut maxLength


b. il doit avoir été initialisé lors de sa déclaration, donc le code ci-dessus ne sera pas
compilé
c. il sera créé lorsque la classe Question sera chargée par la machine virtuelle
d. il est accessible à tous les objets de la classe Question
e. il sera créé lors de la création du premier objet de la classe Question
f. il est accessible en utilisant la syntaxe Question.maxLength

Page14 du
39
2. Étant donné la chaîne suivante :
Chaîne s = « un deux trois » ;
Lequel des morceaux de code suivants produit un résultat différent de la chaîne initiale ?
a. String[] ss s.split(" ");
System.out.println(ss[1]);
b. System.out.println(s.replace("un","").replace(" trois"","));
c. System.out.println(s.substring(4,6));
d. Scanner sc = nouveau(x) scanner(s) ;
sc.next();
System.out.println(sc.next());
e. System.out.println(s.substring(s.indexOf(“ “)+1, s.lastIndexOf(“ “)));
f. pas de réponse
3. Qu'affichera la classe suivante lors de son exécution ?
Test de classe{
intx = f();
statique int y = g();
Test public(){
System.out.println("A");
}
int f(){
System.out.println("B");
renvoie 0 ;
}
statique int g(){
System.out.println("C");
renvoyer 1 ;
}
public static void maiun(String[] s){
nouveau Test();
}
}

a. UN B
b. BCA
c. PBR
d. abc
e. ABC
f. BA
g. pas de réponse

4. Veuillez choisir la réponse qui correspond correctement à chaque classe avec sa description
correcte :
1. Chaîne
2. StringBuffer
3. Générateur de chaînes
a. ses objets peuvent être modifiés mais ils ne sont pas thread-safe
b. ses objets sont immuables
c. ses objets peuvent être modifiés et utilisés en toute sécurité dans des applications multi-
thread
a. 1-b, 2-a, 3-c
b. 1-a, 2-b, 3-c

Page15 du
39
c. 1-b, 2-c, 3-a
d. 1-c, 2-b, 3-a
e. pas de réponse

5. Choisissez la réponse qui remplit correctement le vide :


Le contenu d'un _______L'objet ne peut pas être modifié une fois l'objet créé.
a. Entier
b. Générateur de chaînes
c. Chaîne
d. StringBuffer
e. pas de réponse

6. Parmi les éléments suivants, lesquels sont des classes wrapper Java ? (Choisissez trois)
a. Chaîne
b. Entier
c. Carboniser
d. Booléen
e. Int
f. Personnage
7. Laquelle des méthodes suivantes est présente dans la classe StringBuffer mais pas dans la
classe StringBuilder ?
a. Indice de()
b. supprimer()
c. charAt() d. longueur() e. je n'ai pas de réponse
8. Parmi les énoncés suivants, lesquels sont vrais concernant les méthodes statiques d’une
classe ? (Choisissez trois)
a. ils peuvent accéder directement aux attributs d'instance de la même classe en utilisant
ceci
b. ils ne peuvent pas être appelés à partir de blocs d'initialisation statiques
c. ils peuvent appeler directement les méthodes d'instance de la même classe en utilisant
leur nom court
d. ils peuvent accéder directement aux membres statiques de la classe en utilisant leur
nom court
e. ils peuvent appeler directement d'autres méthodes statiques de la classe en utilisant
leur nom court
f. ils peuvent être appelés en utilisant la syntaxe ClassName.methodName()

9. Qu'affichera le morceau de code suivant lors de son exécution ?

Chaîne s1 = « ABC » ;
Chaîne s2 = nouvelle chaîne ("ABC");

si(s1==s2){
System.out.println("A");
}
si(s1.equals(s2)){
System.out.println("B");
}
si(s1.compareTo(s2)==0){
System.out.println("C");
}

a. abc
b. UN
c. B
d. avant JC

Page16 du
39
e. CA
f. UN B
g. C
h. rien
i. pas de réponse

10. Lequel des énoncés suivants n’est PAS vrai à propos des blocs d’initialisation statiques ?

a. ils peuvent appeler directement les méthodes statiques de la classe en utilisant leur
nom court
b. une classe peut avoir plusieurs blocs d'initialisation
c. ils peuvent accéder directement aux membres d'instance de la classe en utilisant leur
nom court
d. les attributs statiques auxquels un tel bloc accède doivent être déclarés avant l'instance
de bloc
e. lors de l'utilisation de blocs d'initialisation statiques dans la même classe, leur ordre est
important
f. pas de réponse

11. Étant donné le morceau de code suivant :

enum Nombres (UN, DEUX, TROIS)


Classe A{
void f(Nombres n){
changerc(n){
cas UN : System.out.println("Vous en avez un!");
par défaut : System.out.println(n.name());
}
}
}

Laquelle des affirmations suivantes est vraie?

a. le code sera compilé avec succès


b. le code ne sera pas compilé car les types enum ne peuvent pas être utilisés avec switch
c. le code ne sera pas compilé car l'instruction switch ne contient aucune instruction break
d. le code ne sera pas compilé car le cas UN aurait dû être écrit cas Numbers.ONE e. le
code ne sera pas compilé car les types enum n'ont pas de méthode name()
F. pas de réponse

12. Qu'affichera le morceau de code suivant une fois exécuté ?

Chaîne s = « Abracadabra » ;
System.out.println(s.substring(0,5).replace('a','o').lastIndexOf('a'));

a. -1
b. 0
c. 5
d. 3
e. le code ne compilera pas
f. pas de réponse

13. Dans le code ci-dessous, comment créer un objet String basé sur la valeur primitive int
référencée par i ? (choisissez deux remplacements corrects pour la séquence ???)
int je = 5;
Chaîne s = ??? ;

a. String.intValue(i)
b. Entier.toString(i)
c. (Chaîne)i
d. String.ValueOf(i)

14. Étant donné le type Java énuméré ci-dessous, laquelle des affirmations suivantes est FAUX ?
Page17 du
39
enum RVB {ROUGE, VERT, BLEU}

a. la classe RVB a une méthode de valeurs statiques() qui renvoie un tableau


b. il est faux de comparer deux valeurs RVB en utilisant ==. La méthode equals() doit être
utilisée à la place
c. la deuxième constante de la liste est accessible en utilisant RGB.GREEn
d. ROUGE, VERT et BLEU sont des attributs finaux statiques publics de type énuméré
RVB
e. RGB.BLUE.ordinal() renverra 2
f. pas de réponse

15. Dans le code ci-dessous, comment créer un objet Integer basé sur l'objet String référencé par
s ? (choisissez le remplacement correct pour la séquence ???)
Chaîne s = « 123 » ;
Entier i = ??? ;

a. s.parseInt()
b. String.valueOf(s)
c. Entier.valueOf(s)
d. Entier.fromString(s)
e. pas de réponse

16. Parmi les énoncés suivants, lesquels sont vrais concernant le constructeur d'un type énuméré
Java ? (choisissez deux)
a. le programmeur n'est pas autorisé à écrire son propre entrepreneur pour une
énumération
b. un entrepreneur écrit par le programmeur à l'intérieur d'une énumération doit avoir des
informations privées ou
c. une énumération a toujours au moins un constructeur
d. si le programmeur n'écrit pas de constructeur pour une énumération, le compilateur
fournira un
e. un constructeur écrit par le programmeur à l'intérieur d'une énumération doit avoir un
accès public
17. Dans le code ci-dessous, comment créer une double valeur primitive basée sur l'objet String
référencé par s ? (choisissez le remplacement correct pour la séquence ???)
Chaîne s = « 15,2 » ;
double d = ??? ;

a. Double.doubleValeur(s)
b. Double.parseDouble(s)
c. (double
d. String.valueOf(s)
e. pas de réponse

18. Quelle classe Java contient des méthodes statiques pour arrondir et tronquer les nombres ?

a. Mathématiques
b. Nombre
c. Entier
d. Double
e. pas de réponse

19. Dans le code ci-dessous, comment créer une valeur primitive int basée sur l'objet Integer
référencé par i ? (choisissez deux remplacements corrects pour la séquence ???)
Entier i = nouvel entier (8);
entier x = ??? ;

a. i.intValue()

Page18 du
39
b. je
c. i.toInt()
d. Entier.toInt(i)
e. nouveau int(i)

20. Dans le code ci-dessous, comment créer un objet Integer basé sur la valeur primitive i ?
(choisissez trois remplacements corrects pour la séquence ???)
int je = 8;
Entier x = ??? ;

a. Entier.parseInt(i);
b. nouveau entier();
c. je
d. i.intValue()
e. Entier.intValue(i)
f. Entier.valueOf(i)

21. Lequel des énoncés suivants est vrai concernant le code ci-dessous ?

Examen Curs 1 (programmeur Java) 1


Examen Curs 2 (programmeur Java) 5
Examen Curs 3 (programmeur Java) 9
Examen Curs 4 (programmeur Java) 14
Examen Curs 5 (programmeur Java) 20
Examen Curs 6 (programmeur Java) 26
Examen Curs 7 (programmeur Java) 32

a. le code sera bot compilé à cause d'une erreur sur la ligne 2 : les références ne peuvent
pas être déclarées
b. le code sera compilé avec succès
c. le code ne sera pas compilé à cause d'une erreur sur la ligne 5 : l'objet s est final et
donc il ne peut pas être modifié

Page19 du
39
d. le code ne sera pas compilé à cause d'une erreur sur la ligne 4 : il est trop tard pour
initialiser s - il ne peut plus être modifié
e. le code ne sera pas compilé à cause d'une erreur sur la ligne 4 : il n'existe pas de
constructeur StringBuffer de ce type
d. pas de réponse

22. Lequel des énoncés suivants n’est PAS vrai concernant le type énuméré Java ?

a. ils peuvent avoir des attributs (qui doivent être déclarés finaux) et des méthodes définies
par le programmeur
b. ils ont un ensemble de méthodes prédéfinies
c. les constructeurs doivent avoir un niveau d'accès privé ou par défaut
d. ils définissent un nouveau type de données et agissent comme des classes ayant
un ensemble limité d'instances
e. ils peuvent être instanciés en dehors de la définition d'énumération en utilisant
l'opérateur new
f. pas de réponse

23. Où le type énuméré Java peut-il être déclaré ? (choisissez deux)

a. en dehors des autres cours


b. en tant que membre d'une classe Java
c. à l'intérieur d'une méthode d'une classe Java
d. à l'intérieur d'une structure de contrôle (if, while, etc.)

24. Dans le code ci-dessous, comment créer un objet String basé sur l'objet Integer référencé par
i ? (choisissez le remplacement correct pour la séquence ???)
Entier i = nouvel entier (8);
Chaîne s = ??? ;

a. s.toString(i)
b. Entier.stringValue(i)
c. i.toString()
d. (Chaîne)i
e. i.stringValue()
f. pas de réponse

Examen Curs 5 (programmeur Java)


1. Laquelle des commandes suivantes exécutera l'archive app.jar qui existe dans le répertoire
actuel ? (supposons que la classe principale soit correctement définie)
a. jar -java app.jar
b. jar -f app.jar
c. java -cp app.jar
d. java -jar app.jar
e. pas de réponse

2. Tous les éléments de code suivants créeront un objet Période qui encapsule 2 ans, 4 mois et
15 jours, SAUF : (choisissez celui qui ne le fait pas).
a. Période p = Période.ofYears(2).ofMonths(4).ofDays(15);
b. LocalDate d1 = LocalDate.of(2016,1,1);
LocalDate d2 = LocalDate.of(2018,5,16);
Période p = Période, entre (d1,d2);
c. Période p = Période.ofYears(2).withMonths(4).withDays(15);
d. LocalDate d1 = LocalDate.of(2016, 1, 1);
LocalDate d2 = LocalDate.of(2018,5,16);
Période p = d1.jusqu'à (d2);
e. Période p = Période,desAnnées(2).plusMoths(4).plusDays(15);
Page 20 sur 39
3. Parmi les affirmations suivantes, lesquelles sont vraies concernant les types Month et
DayOfWeek ? (choisissez deux)
a. ce sont des types énumérés
b. ils ont tous deux une méthode getDisplayName() qui peut fournir le nom du mois/jour de
la semaine dans la langue souhaitée
c. Month.JANUARY et DayofWeek.MONDAY ont tous deux la valeur correspondante 0
d. Month.MAY et DayOfWeek.SUNDAY sont des valeurs de type int
e. ils font partie du package java.util

4. Parmi les caractéristiques suivantes, lesquelles sont stockées dans un objet Locale ?
(choisissez deux)
a. ville
b. langue
c. Format de nombre
d. format de données
e. pays

5. Lequel des éléments suivants ne constitue PAS un avantage de l’utilisation des archives jar ?

a. la JVM comprend le format jar, donc les classes peuvent être lues directement à partir
d'une archive jar
b. l'utilitaire jar crée un fichier jar pour chaque fichier .class, réduisant ainsi l'espace copié
par les classes
c. le format jar prend en charge la compression des fichiers et des ressources Java,
réduisant ainsi l'espace occupé et les temps de téléchargement
d. une application packagée dans une archive jar peut être exécutée directement à partir
de l'archive, sans l'extraire au préalable
e. distribution facile des applications Java
f. pas de réponse

6. La JVM doit charger la classe ayant la définition suivante :

paquet un.deux ;
Chargement de classe{}

La valeur du chemin de classe est « c\projects\javaclasses;d:\java\lib ». Lequel des fichiers


suivants la machine virtuelle peut-elle rechercher et charger, si elle est trouvée ? (choisissez deux)
a. c:\projects\javaclasses\two\one\Load.class
b. d:\java\lib\two\one\Load.class
c. c:\projects\javaclasses\one\two\Load.class
d. c:\projects\javaclasses\two\one\Load.java
e. d:\java\lib\one\two\Load.class
f. d:\java\lib\one\two\Load.java

7. Quel est le chemin réel vers le fichier demo.xml si le code ci-dessous peut trouver et afficher
correctement le chemin d'accès au fichier ? Supposons que la valeur du paramètre de chemin de
classe est d:\java\lib.
classe ResourceTest{
public static void main (String[] args){
System.out.println(ResourceTest.class.getResource(“/files/xml/demo.xml”));
}
}

a. d:\files\mxl\demo.mxl
b. d:\java\lib\files\xml\demo.xml
c. d:\java\files\xml\demo.xml
d. le chemin ne peut pas être déterminé, car il dépend de l'emplacement de la classe
ResourceTest par rapport à la route du chemin de classe

Page21 du
39
e. pas de réponse

8. Compte tenu de la déclaration ci-dessous :


LocalDate ld = ????;
qu'est-ce qui pourrait remplacer le ???? séquence afin de créer un objet qui encapsule la date
actuelle ?
a. LocalDate.this()
b. LocalDate.current()
c. LocalDate.present()
d. LocalDate.currentDate()
e. LocalDate.now()
f. nouveau LocalDate()
g. pas de réponse

9. Lequel des éléments suivants montre les manières correctes d’appeler la méthode
getResource() ? (Choisissez trois)
a. classe FindResource{
public static void main (String[] args){
URL u = this.getClass().getResource(“/pic.jpg”);
}
}
b. classe trouver une ressource{
public static void main (String[] args){
URL u = FindResource.class.getResource("/pic.jpg");
}
}
c. classe FindResource{
test de vide public(){
URL u = this.class().getResource("pic.jpg");
}
}
d. classe FindResource{
test de vide public(){
URL u = FindResource.getClass().getResource(“/pic.jpg”);
}
}
e. classe FindResource{
test de vide public(){
URL u = FindResource.getClass().getResource(“/pic.jpg”);
}
}
f. classe FindResource{
test de vide public(){
URL u = this.getClass().getResource(“/pic.jpg”);
}
}

10. Un programmeur Java doit utiliser les classes suivantes dans l'une de ses propres classes :
java.lang.Math, java.awt.Button et java.awt.event.ActionEvent. Quel est l'ensemble minimal
d'instructions d'importation qu'il doit utiliser au début du fichier ?
a. importer java.awt.Button ; importer java.awt.event.ActionEvent ;
b. importer java.awt.* ;
c. importer java.awt.* ; importer java.lang.* ;
d. importer java.lang.Math ; importer java.awt.event.ActionEvent ;
e. importer java.*;
f. pas de réponse

Page22 du
39
11. Laquelle des instructions suivantes compilera et créera correctement un objet LocalDateTime
qui encapsule le 14 janvier 2016 11:23:51 ? (Choisissez trois)
a. LocalDateTime.from(2016, 1, 14).avec(LocalTime.of(11,23,51))
b. LocalDate.of(2016, 1, 14).jusqu'à(LocalTime.of(11, 23, 52))
c. LocalDateTime.of(2016, 1, 14, 11, 23, 51)
d. LocalDate.of(2016, 1, 14).atTime(LocalTime.of(11, 23, 51))
e. nouveau LocalDateTime (2016, 1, 14, 11, 23, 51)
f. Année.de(2016).atMonth(Mois.JANVIER).atDay(14).atTime(LocalTime.of(11, 23, 51))
12. Quel package Java est automatiquement importé ?
a. java.lang
b. java.util
c. java.io
d. java.sql
e. pas de réponse

13. Que doit-on utiliser dans le fichier source qui contient une définition de classe afin que la
classe fasse partie d'un package ?
a. une instruction d'importation comme première ligne du constructeur de classe
b. une instruction de package au début du fichier source
c. le nom complet de la classe lors de la déclaration de la classe (class packageName,
class{……et…..})
d. une instruction d'importation au début du fichier source
e. pas de réponse

14. Quelle déclaration d'importation un programmeur doit-il écrire s'il a l'intention d'utiliser l'année
et
Cours LocalDateTime ?
a. importer java.time.* ;
b. importer java.lang.* ;
c. importer java.util.* ;
d. tout ce qui précède est nécessaire ;
e. pas de réponse

15. Quel nom de méthode doit remplacer le ???? dans le code afin de créer un nouvel objet qui
encapsule les données le 14 janvier 2016 ?
LocalDate d = LocalDate.????(2016, 1, 14);
a. à
b. avec
c. depuis
d. de
e. ensemble
f. pas de réponse

16. Compte tenu de la hiérarchie des ressources ci-dessus,


lesquelles des valeurs suivantes sont des valeurs correctes
qui peuvent être attribuées au chemin variable dans le code
ci-dessous afin d'accéder au fichier pic1.jpg ? (choisissez
deux)
classes de packages ;
Images de classe{
public static void main (String[] args){
Chemin de chaîne = ????;
URL pic1 = Images.class.getResource(chemin);
a. ../classes/images/pic1.jpg
b. /images/pic1.jpg

Page23 du
39
c. images/pic1.jpg
d. ../images/pic1.jpg
e. ../classes/pic1.jpg
f. /classes/images/pic1.jpg
17. Parmi les avantages suivants, lequel présente l'avantage de l'utilisation de packages en
Java ?
a. minimiser ou éviter les collisions de noms
b. un membre de classe avec un niveau d'accès par défaut sera masqué pour les classes
du même package mais disponible pour les classes extérieures
Le membre de la classe ca avec un niveau d'accès protégé ne sera accessible que dans
les sous-classes du même package.
d. moins structurant pour les projets
e. pas de réponse

18. Étant donné une classe nommée Exemple qui fait partie du package test.classes , laquelle
des définitions de classe suivantes sera correctement compilée ? (choisissez deux)
a. emballer mon paquet ;
classe MaClasse{
Exemple e = new Exemple();
}
b. emballer mon paquet ;
classe MaClasse{
test.classes.Example e = new Exemple();
c. emballer mon paquet ;
importer test.classes.Exemple ;
classe MaClasse{
Exemple e = new Exemple();
}
d. emballer mon paquet ;
test d'importation.* ;
classe MaClasse{
Exemple e = new Exemple();
}
e. emballer mon paquet ;
importer test.classes.* ;
classe MaClasse{
test.classes.Example e = new Exemple();
}
f. emballer mon paquet ;
importer des tests.classes ;
classe MaClasse{
Exemple e = new Exemple();
}

19. Étant donné le morceau de code suivant :


LocalDate d = LocalDate.of(2016, 8, 12);
Chaîne fmt = « jj ???? AAAA » ;
System.out.println(d.format(DateTimeFormatter.ofPatteern(fmt)));
par quoi devrait remplacer le ???? séquence pour que le code affiche le nom court du mois ?
a. MMMMM
b. M
c. MMM
d. MM
e. pas de réponse

20. Laquelle des classes suivantes pourrait être utilisée pour stocker une durée totale de 30

Page24 du
39
heures, 20 minutes et 5 secondes ?

a. DateHeure Locale
b. Heure locale
c. Période
d. Durée
e. pas de réponse

21. Qu'est-ce qu'un objet Java Locale ?

a. un objet qui contient des formats de nombres, des formats de date, des devises, etc.
pour un certain pays
b. un objet qui encapsule une date et une heure locales
c. un objet qui identifie une zone géographique/culturelle
d. un objet qui contient un groupe de ressources (par exemple des messages traduits) qui
dépendent de la langue et du pays
e. pas de réponse

22. Compte tenu de la définition de la classe Java ci-dessous, laquelle des instructions suivantes
placées sur la ligne X permettra au code de se compiler correctement ? (Choisissez trois)
importer java.lang.Integer.* statique;
Test de classe{
public static void main (String[] args){
//——————————————-> ligne X
}
}

a. System.out.prinln(intValue("5"));
b. System.out.println(valueOf(MAX_VALUE));
c. System.out.println(MAX_VALUE-1);
d. System.out.println(parseInt("16"));
e. Entier i = nouvel entier (PI) ;
f. le code affiché contient déjà une erreur et ne sera jamais compilé, peu importe ce qui est
mis à la ligne X

23. Étant donné une référence à un objet YearMonth nommé ym, lequel des morceaux de code
suivants produira un autre objet YearMonth qui encapsule le même mois mais trois ans plus tard ?
(choisissez deux)

a. Période p = Période.ofYears(3);
AnnéeMois ym1 = ym.plus(p);
b. AnnéeMois ym1 = Année.plus(3).of(ym);
c. AnnéeMois ym1 = ym.withYears(3);
d. AnnéeMois ym1 = ym.plusYears(3);
e. Durée d = Durée.ofYears(3);
AnnéeMois ym1 = ym.of(d);

24. Lequel des morceaux de code suivants signera le mois en cours avec la variable x ?
(choisissez-en quatre)
a. Mois x = Période,maintenant().getMonth();
b. Mois x = Durée.now().getMonth();
c. Mois x = YearMonth.now().getMonth();
d. Mois x = Année.now().getMonth();
e. Mois x = MonthDay.now().getMonth();

f. Mois x = LocalDate.now().getMonth();
g. Mois x = LocalDatetTime.now().getMonth();
h. Mois x = Mois.now().getMonth();

Page25 du
39
Examen Curs 6 (programmeur Java)
1. Étant donné l’ensemble des classes ci-dessous, laquelle des affirmations suivantes est une
affectation valide ?

Téléphone de classe{}
la classe MobilePhone étend le téléphone{}
la classe SmartPhone étend le téléphone mobile{}

a. SmartPhone s = nouveau téléphone mobile ();


b. SmartPhone s = nouveau téléphone ();
c. Téléphone portable m = nouveau téléphone ();
d. Téléphone p = nouveau téléphone mobile (); e. pas de réponse

2. Comment utiliser le super mot-clé ? (Choisissez trois)

a. pour accéder aux champs non privés de la classe parent à partir de la sous-classe
b. pour appeler un constructeur d'une sous-classe à partir d'un autre constructeur de la
même sous-classe
c. pour accéder à l'implémentation de la méthode parent à partir d'une implémentation de
sous-classe dans le cas de méthodes statiques
d. pour définir le niveau d'accès le plus permissif pour une méthode qui sera héritée dans
les sous-classes
e. pour appeler le constructeur parent à partir d'un constructeur de sous-classe
f. pour appeler une implémentation de méthode parent à partir de l'implémentation de
sous-classe remplacée dans le cas de méthodes d'instance
3. Si une méthode d'une classe parent doit être accessible dans les sous-classes mais pas
surchargée dans celles-ci, quel mot-clé doit être utilisé dans la définition de la méthode ?
a. abstrait
b. privé
c. statique
d. final
e. pas de réponse

4. Étant donné le fragment de code ci-dessous, laquelle des expressions suivantes est évaluée
comme fausse à la ligne X ?
Classe A{}
la classe B étend A{}
la classe C étend B{}
la classe D étend B{}

Héritage de classe{
public static void main (String[] args){
A a = nouveau A();
Bb = nouveau B();
Cc = nouveau C();
D d = nouveau D();
// ------------------> ligne X
}

a. c instance d'objet
b. d instance de C
c. c instance de B
d. une instance de A
e. d instance de A
f. b instance de A

Page26 du
39
g. pas de réponse

5. Qu'affichera le morceau de code suivant une fois exécuté ?

Classe A{
void m(){ System.out.println("A"); }
}
la classe B étend A{
void m(){ System.out.println("B"); }
}
la classe publique C étend B{
void m(){ System.out.println("C"); }
public static void main (String[] args){
B b1 = nouveau C();
b1.m();
}
}

a. UN
b. C
c. B
d. le code ne compile pas
e. pas de réponse

6. Quels modificateurs et qualificatifs un attribut d'interface possède-t-il automatiquement, même


si le programmeur ne les spécifie pas explicitement ? (Choisissez trois)
a. final
b. transitoire
c. protégé
d. abstrait
e. publique
f. statique

7. Quel niveau d'accès un membre de la classe parent doit-il avoir pour être accessible
uniquement dans les sous-classes du même package ?
a. défaut
b. publique
c. protégé
d. privé
e. pas de réponse

8. Lequel des énoncés suivants n’est PAS vrai à propos d’une interface Java ?

a. il est déclaré à l'aide du mot-clé interface


b. il peut avoir des attributs statiques
c. il peut y avoir des constructeurs
d. toutes ses méthodes sont abstraites
e. il peut être implémenté par des classes concrètes ou abstraites
f. pas de réponse

9. Étant donné les définitions de classe suivantes qui font partie de différents packages, quels
membres de la classe Parent seront accessibles dans les méthodes de Subclass ?

// la classe Parent fait partie du package alpha


classe publique Parent{
public int un;
privé int b;
protégé int c;
int d;
}

Page27 du
39
// La sous-classe de classe fait partie du package bêta
La sous-classe de classe publique étend Parent{
méthode void(){
?????? // quels membres de Parent sont accessibles ici ?
}
}

a. a et d seulement
b. a, b et c
c. a, c et d
d. a et c seulement
e. un seul
f. a et b seulement
g. pas de réponse

10. Lequel des énoncés suivants est vrai à propos d’une classe Java abstraite ?

a. il peut être instancié


b. il ne peut pas être étendu par une autre classe
c. il n'a que des méthodes abstraites
d. il a un constructeur
e. pas de réponse

11. Lequel des énoncés suivants est vrai concernant le fragment de code ci-dessous ?

T-shirt de classe{
Taille de chaîne protégée ;
public TShirt(String s){ taille = s; }
}
la classe RockTShirt étend le TShirt{
Groupe de cordes;
public RockTShirt (Chaîne s, Chaîne b){
taille = s ;
bande = b;
}
}

a. le code ne sera pas compilé car il manque au constructeur de la sous-classe l'appel au


constructeur parent
b. le code ne sera pas compilé car la taille de l'attribut n'est pas accessible à
l'intérieur de la sous-classe
c. RockTShirt est la classe parent de TShirt
d. le code sera compilé avec succès
e. un objet TShirt "est un" RockTShirt
f pas de réponse

12. Étant donné l’ensemble de classes suivant, laquelle des instructions suivantes constitue une
manière non valide d’appeler la méthode f() sur la ligne X ?

Téléphone de classe{}
la classe MobilePhone étend le téléphone{}
la classe SmartPhone étend le téléphone mobile{}

Test de classe{
annuler f (téléphone mobile p) {}
public static void main (String[] args){
Test t = nouveau Test();
Téléphone mobile p1 = nouveau téléphone mobile ();
SmartPhone p2 = nouveau SmartPhone();

Page28 du
39
MobilePhone p3 = nouveau SmartPhone();
Téléphone p4 = nouveau téléphone mobile (); tf(?????????); // < ligne X
}
}

a. tf(p2)
b. tf(p3)
c. tf(p4)
d. tf(p1)
e. pas de réponse

13. Qu'est-ce qui est vrai dans le code suivant ?

classe Routeur{
modèle de chaîne privé ;
routeur public (chaîne m) { modèle = m ; } }
la classe WirelessRouter étend le routeur{
Chaîne prise en chargeWirelessStandard ;
public WirelessRouter (String w) {supportedWirelessStandard = w ;
}}

a. le code ne sera pas compilé car une classe parent ne peut pas avoir d'attributs privés
b. le code ne sera pas compilé car le constructeur de la sous-classe doit avoir au moins
deux arguments
c. le code ne sera pas compilé car une sous-classe n'est pas autorisée à déclarer de
nouveaux attributs
d. le code ne sera pas compilé car le constructeur de la sous-classe n'inclut pas d'appel
explicite au constructeur parent
e. le code sera compilé avec succès f. pas de réponse

14. Lequel des éléments suivants n’est PAS un avantage de l’héritage ?


a. la possibilité d'écrire plusieurs méthodes avec le même nom dans la même classe
b. la possibilité d'utiliser un objet de la sous-classe là où un objet de la classe parent est
requis
c. réutilisation du code
d. la possibilité de créer des types de données associés e. pas de réponse

Page29 du
39
15. Compte tenu des définitions de classe suivantes, quelles méthodes peuvent être appelées
pour référence q sur la ligne X ? (choisissez deux)

Question de classe{
public void getNumAnswers(){} }
class MultipleChoiceQuestion extends Question{ public Answer[] getCorrectAnswers(){}
public static void main(String[] args){
Question q = new MultipleChoiceQuestion(); q. ????? (); // < ligne X
}
}

a. getNumRéponses()
b. àChaîne()
c. est égal()
d. getCorrectAnswers()

16. Quelle méthode de la classe Object doit être remplacée dans la classe Person pour que le
code ci-dessous s'imprime John ?

Personne p = nouvelle Personne("Jean");


System.out.println(p);
a. équivaut à()
b. code de hachage()
c. valeur de chaîne()
d. est égal()
e. toString() f. pas de réponse

17. Laquelle des méthodes suivantes de la classe Object renvoie un booléen ?

a. code de hachage()
b. est égal()
c. àChaîne()
d. comparer aux()
e. équivaut à()
f. pas de réponse

18. Parmi les énoncés suivants, lesquels sont vrais à propos de l'héritage en Java ? (choisissez
deux)

a. lorsqu'une classe étend un objet, elle ne peut étendre aucune autre classe
b. une classe peut étendre plusieurs autres classes mais elle peut implémenter
exactement une seule interface
c. une classe ne peut étendre qu'une seule autre classe mais elle peut implémenter
plusieurs interfaces
d. toute classe Java étend automatiquement Object
e. une classe parent abstraite est implémentée par des sous-classes, non étendue
19. Compte tenu de l'ensemble des classes ci-dessous, laquelle des affectations suivantes sera
compilée et exécutée avec succès (sans générer d'erreur de compilation ou d'exécution) lorsqu'elle
est insérée sur la ligne X ?

Téléphone de classe{}
la classe MobilePhone étend le téléphone{}
la classe SmartPhone étend le téléphone mobile{}
Castings de classe publique{
public static void main (String[] args){
Page 30 sur 39
Téléphone mobile p1 = nouveau téléphone mobile ();
SmartPhone p2 = nouveau SmartPhone();
MobilePhone p3 = nouveau SmartPhone();
Téléphone p4 = nouveau téléphone mobile (); ?????????? // < ligne X
}
}

a. p1 = (Téléphone portable)p2 ;
b. p3 = (smartphone)p4 ;
c. p4 = (smartphone)p1 ;
d. p3 = (smartphone)p1 ;
e. p2 = (Téléphone portable)p1 ;
f. pas de réponse

20. Lesquels des mots-clés suivants sont utilisés pour créer une relation « est une » entre deux
classes ou entre une classe et une interface ? (choisissez deux)
a. dérivés
b. améliore
c. met en oeuvre
d. s'étend

21. Lors de la substitution d'une méthode dans une sous-classe, quelle différence la signature de
la méthode de la sous-classe peut-elle avoir par rapport à la méthode parent ?
a. un niveau d'accès plus permissif
b. une liste modifiée de types de données d'argument
c. un type de retour "plus grand" (ex : renvoie un entier au lieu d'un octet)
d. un autre nom de méthode
e. un type de retour "plus petit" (ex : renvoie un octet au lieu d'un int)
f. pas de réponse

22. Laquelle des déclarations suivantes insérées à la ligne X fera que le code ci-dessous
s'affichera vrai ?
animal de compagnie de classe {
Nom de la chaîne ;
public booléen égal(Objet o){
// ------------------------------------> ligne X
}
public static void main (String[] args){
Animal de compagnie p1 = nouvel Animal de compagnie();
p1.name = "Gamine";
Animal de compagnie p2 = nouvel Animal de compagnie();
p2.name = "Gamine";
System.out.println(p1.equals(p2));
}
}

a. renvoie this.equals((Pet)o);
b. renvoie this.equals(o);
c. retourner super.equals(o);
d. return nom.equals(o.name);
e. return name.equals(((Pet)o).name);
f. return o.equals((Pet)name);
g. pas de réponse

23. Quels modificateurs et qualificatifs une méthode d'interface possède-t-elle automatiquement,


même si le programmeur ne les spécifie pas explicitement ? (choisissez deux)

Page31 du
39
a. protégé
b. final
c. publique
d. abstrait
e. statique
24. Lequel des énoncés suivants est vrai concernant la redéclaration des attributs de classe
parent dans les sous-classes ?
a. l'attribut de la sous-classe doit avoir un nom (identifiant) différent de celui de la classe
parent
b. l'attribut de la sous-classe doit avoir la même valeur que celui de la classe parent
c. l'attribut de la sous-classe doit avoir le même niveau d'accès que celui de la classe
parent
d. lorsqu'il est accessible à l'aide de son nom court, l'attribut de la sous-classe masquera
(ombrera) celui de la classe parent
e. l'attribut de la sous-classe doit avoir le même type de données que celui de la classe
parent
f. pas de réponse
25. Quel opérateur Java est utilisé pour tester la relation « est une » entre les classes ?
a. exemple de
b. est un
c. met en oeuvre
d. s'étend
e. sous-classes
f. pas de réponse

Examen Curs 7 (programmeur Java)


1. Veuillez choisir la réponse qui correspond correctement aux éléments suivants du système
d'événements AWT/Swing avec leur description :
a. source d'événement
b. objet d'événement
c. objet écouteur
d. interface d'écoute
1. il doit être implémenté par l'objet qui gère l'événement
2. il contient les détails sur l'interaction entre l'utilisateur et l'interface graphique
3. c'est le composant qui génère l'événement
4. il contient le code qui est exécuté en réaction à un événement
a. 1-d, 2-c, 3-b, 4-a
b. 1-d, 2-c, 3-a, 4-b
c. 1-a, 2-b, 3-c, 4-d
d. 1-d, 2-b, 3-a, 4-c
e. pas de réponse

2.Lequel des éléments suivants n'est PAS un composant graphique mais est souvent utilisé dans le
cadre d'une interface graphique ?
a. JTextField
b. JTable
c. Groupe de boutons
d. JComboBox
3. Lequel des événements suivants est un événement sémantique ?

a. L'évenement important
b. Événement de souris
Page32 du
39
c. ActionÉvénement
d. aucune des réponses ci-dessus
e. pas de réponse

4. Combien de fichiers .class le code suivant générera-t-il une fois compilé ?

classe publique A{
public vide f(){}
}
classe B{
entier x = 8 ;
vide g(){
A a1 = nouveau A(){
public vide f(){
System.out.println(x);
}
};
}
}
}

a. 2
b. 3
c. 0
d. 1
e. pas de réponse

5. Parmi les méthodes suivantes, laquelle est une méthode que possèdent tous les objets
événementiels AWT/Swing ?

a. getModèle()
b. getSource()
c. getActionCommand()
d. getModifiers()
e. pas de réponse

6. Lequel des énoncés suivants est vrai concernant le morceau de code ci-dessous ?

classe publique A{
public vide f(){}
}
classe B{
vide g(){
entier x=3 ;
A a1 = nouveau A(){
public vide f(){
System.out.println(x);
}
};
}
}
a. le code ne sera pas compilé car la variable locale x aurait dû être déclarée finale
b. le code ne sera pas compilé car les classes internes anonymes ne peuvent pas être
créées dans les méthodes de classe
c. le code ne sera pas compilé car une classe interne ne pourra jamais accéder aux
variables locales de la méthode dans laquelle elle a été déclarée
d. le code sera compilé avec succès
e. pas de réponse

Page33 du
39
7. Qu'est-ce qui est vrai à propos du morceau de code ci-dessous ?
Classe A{
int privé x ;
classe B{
public vide f(){
x++ ;
}
}
}

a. le code ne sera pas compilé car la méthode f() ne peut pas accéder à une variable
privée de la classe externe
b. le code ne sera pas compilé car la méthode f() ne peut accéder à la variable x que si x a
été déclaré final
c. le code sera compilé avec succès
d. le code ne sera pas compilé car la classe B doit être déclarée en dehors de la
classe A
e. le code ne sera pas compilé car les classes internes ne peuvent être
qu'anonymes
f. pas de réponse

8. Quel type d'événement une JComboBox génère-t-elle lorsque l'utilisateur sélectionne une
valeur différente dans la liste déroulante ?
a. ActionÉvénement
b. CaretÉvénement
c. DocumentÉvénement
d. Événement Fenêtre
e. pas de réponse

9. Quelle est la classe parent de tous les composants graphiques Swing qui ont un comportement
de type bouton ?
a. Bouton abstrait
b. JBouton
c. Bouton
d. JMenuItem
e. pas de réponse

10. Quelle est la particularité de JDialog par rapport à JFrame ?


a. un JDialog peut être redimensionné, alors qu'un JFrame ne le peut pas
b. un JDialog peut avoir une barre de menu, alors qu'un JFrame ne le peut pas
c. un JDialog peut être modal, alors qu'un JFrame ne peut pas
d. JDialog est un conteneur racine, alors que JFrame ne l'est pas
e. pas de réponse

11. Un groupe de boutons Swing qui s'excluent doivent tous avoir les mêmes :
a. groupe de boutons
b. taille
c. alignement

d. nom
e. texte
f. pas de réponse
12. Parmi les énoncés suivants, lesquels sont vrais à propos du système d'événements
AWT/Swing ? (choisissez DEUX )
a. lorsqu'on appuie une fois, un bouton génère une série d'événements, pas un seul

Page34 du
39
b. un composant peut généralement générer plusieurs types d'événements
c. un composant ne peut avoir qu'un seul objet écouteur par type d'événement
d. chaque interface d'écouteur a exactement une méthode qui doit être remplacée par les
objets d'écouteur
e. tous les objets événementiels ont le même ensemble de méthodes, mais avec des
implémentations différentes
13. Quel type d'événement peut être généré à la fois par les JButtons et les JComboBox ?
a. Événement Fenêtre
b. ActionÉvénement
c. DocumentÉvénement
d. CaretÉvénement
e. pas de réponse

14. Lequel des éléments suivants affichera correctement une boîte de dialogue contextuelle
affichant un message d'erreur ? Supposons que wnd soit une référence à un JFrame existant.
a. JDialog.showMessage(wnd, "Une erreur s'est produite", "ERROR",
ERROR_MESSAGE);
b. JFrame.showDialog(wnd, "Une erreur s'est produite", "ERREUR",
JFrame.ERROR_MESSAGE);
c. wnd.showDialog("Une erreur s'est produite", "ERREUR", JDialog.ERROR_MESSAGE);
d. JOptionPane.showMessageDialog(wnd, "Une erreur s'est produite" ,"ERROR",
JOptionPane.ERROR_MESSAGE);
e. pas de réponse

15. Lequel des éléments suivants crée et affiche correctement un JFrame contenant un bouton
qui ferme l'application ? (choisissez DEUX )
a. classe publique TheFrame {
public static void main (String[] arguments) {
JFrame f = nouveau JFrame();
JButton b = nouveau JButton("Quitter");
b.addActionListener(new Exit());
f.ajouter(b);
f.setSize(200,40);
f.setVisible(true);
}
}

la classe Exit implémente ActionListener{


public void actionPerformed() {
Système.exit(0);
}

b. classe publique AFrame {


public static void main (String[] arguments) {
JFrame f = nouveau JFrame();
JButton b = nouveau JButton("Quitter");
f.ajouter(b);
f.setSize(200,40);
f.setVisible(true);
}
}

Page35 du
39
la classe Exit implémente ActionListener{
public void actionPerformed(ActionEvent e) { System.exit(0);
}

c. classe publique AFrame {


public static void main (String[] arguments) {
JFrame f = nouveau JFrame();
JButton b = nouveau JButton("Quitter"); b.addActionListener(new Exit());
f.ajouter(b);
f.setSize(200,40);
f.setVisible(true);
}
}

sortie de classe{
public void actionPerformed(ActionEvent e) { System.exit(0);
}

d. Cadre de classe publique {


public static void main (String[] arguments) {
JFrame f = nouveau JFrame();
JButton b = nouveau JButton("Quitter");
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { System.exit(0);
}
});
f.ajouter(b);
f.setSize(200, 40);
f.setVisible(true);
}
}

e. Cadre de classe publique {


public static void main (String[] arguments) {
JFrame f = nouveau JFrame();
JButton b = nouveau JButton("Quitter"); b.addActionListener(new Exit());
f.ajouter(b);
f.setSize(200,40);
f.setVisible(true);
}
}

la classe Exit implémente ActionListener{


public void actionPerformed(ActionEvent e) { System.exit(0);

Page36 du
39
16. Étant donné le code suivant :

classe Combo {
public static void main(String[] a) {
JFrame f = nouveau JFrame();
JComboBox cmb = new JComboBox();
String[] elements = {"un", "deux", "trois"} ; //
-------------- ligne X ------------
f.add(cmb);
f.setSize(200,30);
f.setVisible(true);
}
} lequel des éléments suivants pourrait être inséré à la ligne X pour que le code s'exécute
correctement et affiche la fenêtre ci-dessous ? (choisissez DEUX )

a. Modèle DefaultComboBoxModel = new DefaultComboBoxModel();


for(String s:elements){ cmb.setModel(s);
}
modèle.addElement(cmb);

b. Modèle DefaultComboBoxModel = new DefaultComboBoxModel();


for(String s:elements){ model.addElement(s);
}
cmb.setModel(modèle);

c.Modèle DefaultComboBoxModel = nouveau DefaultComboBoxModel (éléments);


cmb.addElement(modèle);

d. Modèle DefaultComboBoxModel = nouveau DefaultComboBoxModel (cmb);


for(String s:elements){ cmb.addElement(s);
}

e. cmb.setModel(éléments);

f. Modèle DefaultComboBoxModel = nouveau DefaultComboBoxModel (éléments);


cmb.setModel(modèle);

17. L'architecture d'un composant Swing s'inspire du modèle MVC, mais elle regroupe les parties
suivantes en un seul objet d'interface utilisateur :
a. modèle et vue
b. modèle et contrôleur
c. vue et contrôleur

d. modèle, vue et contrôleur e. pas de réponse

18. Quels composants Swing peuvent être affichés à l’écran sans être placés à l’intérieur d’un
autre composant ?
a. composants complexes comme des listes ou des tableaux
b. conteneurs racine
c. composants de base comme des boutons ou des cases à cocher
d. conteneurs intermédiaires
e. pas de réponse

Page37 du
39
19. Laquelle des affirmations suivantes colorera le panneau p en rouge ? (choisissez DEUX )

a. p.setBackground(Color.RED);
b. p.setBackground(RED);
c. p.setForeground (nouvelle couleur (ROUGE));
d. p.setForeground(Color.RED);
e. p.setBackground(nouvelle couleur(255,0,0));

20. À quelle partie du modèle de conception MVC correspond une interface utilisateur graphique
d’une application Java ?
un. modèle
b. voir
c. manette
d. aucune des réponses ci-dessus
e. pas de réponse

21. Parmi les types de composants graphiques suivants, lesquels peuvent être placés dans un
groupe de boutons ? (choisissez DEUX )
a. JSpinner
b. JCheckBox
c. JSlider
d. JRadioButton
e. JComboBox

22. Lequel des composants Swing suivants possède un attribut de texte qui peut être manipulé à
l'aide des méthodes getText() et setText() du composant ? (choisissez TROIS )
a. JBouton
b. JProgressBar
c. PanneauJ
d. JListe
e. JÉtiquette
F. JCheckBox

23. Laquelle des classes suivantes correspond à un bouton ou un composant semblable à un


bouton qui ne reste pas "appuyé" après avoir cliqué dessus ?
a. JCheckBoxMenuItem
b. JBouton
c. JCheckBox
d. JRadioButton
e. JRadioButtonMenuItem
f. JToggleButton
g. pas de réponse

24. Quelle interface doit être implémentée par l'objet qui réagit à l'appui sur un bouton Swing ?
a. BoutonÉcouteur
b. ActionListener
c. Modèle d'action
d. CaretÉcouteur
e. ActionÉvénement
f. pas de réponse
24. Lequel des types de panneaux suivants contient deux composants séparés par un séparateur,
ajustant automatiquement la taille des composants lorsque l'utilisateur déplace le séparateur ?
a. JSplitPane
b. JLayeredPane
c. JTabbedPane
d. JScrollPane

Page38 du
39
e. pas de réponse

Page39 du
39

Vous aimerez peut-être aussi