QCM - Java
50 Questions
Instructions: Choisissez la meilleure réponse pour chaque question. Les réponses correctes sont
indiquées entre parenthèses à la fin de chaque question.
1. Quelle est la caractéristique principale de Java ? (Réponse: B)
A) Interprété uniquement
B) Compilé et portable (bytecode)
C) Langage bas niveau
D) Pas de gestion mémoire
2. Quelle est la classe de base de toutes les classes Java ? (Réponse: C)
A) String
B) System
C) Object
D) Class
3. Quel mot-clé est utilisé pour l'héritage en Java ? (Réponse: B)
A) implements
B) extends
C) inherits
D) super
4. Qu'est-ce qu'une interface en Java ? (Réponse: B)
A) Une classe abstraite
B) Un contrat de méthodes
C) Un type primitif
D) Un package
5. Quel est le modificateur d'accès le plus restrictif ? (Réponse: D)
A) public
B) protected
C) default
D) private
6. Quelle méthode est le point d'entrée d'un programme Java ? (Réponse: B)
A) start()
B) main()
C) run()
D) execute()
7. Qu'est-ce que la JVM ? (Réponse: A)
A) Java Virtual Machine
B) Java Variable Method
C) Java Version Manager
D) Java Visual Module
8. Quel mot-clé crée une constante en Java ? (Réponse: B)
A) const
B) final
C) static
D) immutable
9. Que signifie OOP ? (Réponse: A)
A) Object Oriented Programming
B) Open Output Protocol
C) Operating Output Process
D) Ordered Object Properties
10. Comment gérer les exceptions en Java ? (Réponse: C)
A) if-else
B) switch-case
C) try-catch
D) while-do
11. Quelle collection n'autorise pas les doublons ? (Réponse: C)
A) ArrayList
B) LinkedList
C) HashSet
D) Vector
12. Qu'est-ce qu'un constructeur ? (Réponse: A)
A) Une méthode spéciale pour initialiser les objets
B) Une variable statique
C) Une interface
D) Un package
13. Quel mot-clé empêche l'héritage d'une classe ? (Réponse: B)
A) sealed
B) final
C) static
D) private
14. Qu'est-ce que le polymorphisme ? (Réponse: A)
A) Plusieurs formes d'un objet
B) Une seule classe
C) Un type de boucle
D) Une exception
15. Comment déclarer un tableau en Java ? (Réponse: D)
A) int[] arr
B) array int arr
C) int arr[]
D) A et C sont correctes
16. Quelle est la taille d'un int en Java ? (Réponse: B)
A) 16 bits
B) 32 bits
C) 64 bits
D) 8 bits
17. Qu'est-ce que l'encapsulation ? (Réponse: A)
A) Cacher les détails d'implémentation
B) Créer plusieurs objets
C) Hériter des classes
D) Gérer les exceptions
18. Quel opérateur teste l'égalité des objets ? (Réponse: B)
A) ==
B) equals()
C) compare()
D) is()
19. Qu'est-ce qu'une classe abstraite ? (Réponse: A)
A) Une classe qui ne peut pas être instanciée
B) Une classe finale
C) Une interface
D) Une classe statique
20. Comment créer un thread en Java ? (Réponse: A)
A) Hériter de Thread ou implémenter Runnable
B) Utiliser new Process()
C) Appeler start()
D) Utiliser async
21. Quelle méthode compare deux chaînes ? (Réponse: B)
A) compare()
B) equals()
C) ==
D) match()
22. Qu'est-ce que le garbage collector ? (Réponse: A)
A) Gestion automatique de la mémoire
B) Un compilateur
C) Un debugger
D) Un IDE
23. Quel package contient les classes de base ? (Réponse: B)
A) [Link]
B) [Link]
C) [Link]
D) [Link]
24. Comment déclarer une variable constante ? (Réponse: A)
A) final int X = 10
B) const int X = 10
C) static int X = 10
D) immutable int X = 10
25. Qu'est-ce qu'une méthode statique ? (Réponse: A)
A) Appartient à la classe, pas à l'instance
B) Ne peut pas être modifiée
C) Est abstraite
D) Est privée
26. Quel mot-clé référence l'objet courant ? (Réponse: B)
A) self
B) this
C) current
D) me
27. Comment gérer plusieurs exceptions ? (Réponse: A)
A) try-catch multiple ou multi-catch
B) if-else
C) switch
D) while
28. Qu'est-ce qu'une Enum ? (Réponse: A)
A) Un type énuméré avec valeurs fixes
B) Une exception
C) Une interface
D) Une collection
29. Quelle interface pour les collections ordonnées ? (Réponse: B)
A) Set
B) List
C) Map
D) Queue
30. Comment créer un objet immuable ? (Réponse: A)
A) Tous les champs final et pas de setters
B) Utiliser const
C) Hériter de Immutable
D) Utiliser freeze()
31. Qu'est-ce que l'autoboxing ? (Réponse: A)
A) Conversion automatique primitif ↔ objet
B) Création automatique d'objets
C) Suppression automatique
D) Compilation automatique
32. Quelle méthode lance un thread ? (Réponse: A)
A) start()
B) run()
C) execute()
D) begin()
33. Comment lire un fichier en Java ? (Réponse: A)
A) FileReader, BufferedReader
B) FileInput
C) ReadFile
D) InputFile
34. Qu'est-ce qu'une lambda expression ? (Réponse: A)
A) Fonction anonyme
B) Classe anonyme
C) Variable
D) Package
35. Quel framework pour les tests unitaires ? (Réponse: C)
A) JUnit
B) TestNG
C) Les deux
D) Mockito uniquement
36. Comment synchroniser du code ? (Réponse: A)
A) synchronized
B) lock()
C) atomic
D) thread-safe
37. Qu'est-ce que Stream API ? (Réponse: A)
A) Traitement fonctionnel des collections
B) Lecture de fichiers
C) Gestion réseau
D) Threading
38. Quelle annotation pour overrider une méthode ? (Réponse: A)
A) @Override
B) @Overwrite
C) @Super
D) @Extends
39. Comment créer une copie d'objet ? (Réponse: A)
A) Cloneable et clone()
B) copy()
C) duplicate()
D) new Object()
40. Qu'est-ce que JDBC ? (Réponse: A)
A) Java Database Connectivity
B) Java Data Base Connection
C) Java Direct Base Call
D) Java DB Controller
41. Quelle collection pour clé-valeur ? (Réponse: A)
A) Map
B) Set
C) List
D) Array
42. Comment déclarer une méthode variable args ? (Réponse: A)
A) void method(int... args)
B) void method(int[] args)
C) void method(args int)
D) void method(*int args)
43. Qu'est-ce que la réflexion en Java ? (Réponse: A)
A) Inspection du code à l'exécution
B) Compilation
C) Débogage
D) Documentation
44. Quel type pour dates modernes ? (Réponse: A)
A) LocalDate, LocalDateTime
B) Date
C) Calendar
D) TimeStamp
45. Comment gérer les ressources automatiquement ? (Réponse: A)
A) try-with-resources
B) finally
C) close()
D) dispose()
46. Qu'est-ce qu'un design pattern ? (Réponse: A)
A) Solution réutilisable à un problème
B) Un framework
C) Une librairie
D) Un compilateur
47. Quel pattern pour une seule instance ? (Réponse: A)
A) Singleton
B) Factory
C) Observer
D) Strategy
48. Comment documenter le code Java ? (Réponse: A)
A) Javadoc
B) Comments
C) README
D) XML
49. Qu'est-ce que Maven/Gradle ? (Réponse: A)
A) Outils de build et gestion dépendances
B) IDEs
C) Frameworks
D) Librairies
50. Quelle version introduit les modules ? (Réponse: A)
A) Java 9
B) Java 8
C) Java 11
D) Java 7