EPREUVE DE RATTRAPAGE
Matière : Programmation en Java (J2SE ; JEE)
3ème année IG/AIP – ENEAM/Année 2025-2026 *** Durée : 1H 30
QCM (20PTS)
1- L’interprétation des programmes Java est effectuée par
(a) API (b) JDK
(c) JVM (d) AWT
2- Lequel des éléments suivants n’est pas un concept POO en Java ?
(a) Héritage (b) Encapsulation
(c) Polymorphisme (d) Compilation
3- Quand la surcharge de méthode est-elle déterminée ?
(a) Au moment de l’exécution (b) Au moment de la compilation
(c) Au moment du codage (d) Au moment de l’interprétation
4- Quel concept de Java est un moyen de convertir des objets du monde réel en termes de
classe ?
(a) Polymorphisme (b) Encapsulation
(c) Abstraction (d) Héritage
5- Quels keywords sont utilisés pour spécifier la visibilité des propriétés et des
méthodes ?
(a) Final (b) Private
(c) Abstract (d) Protected
(e) public
6- Les Lambdas introduites dans Java 8 nous permettent de traiter
(a) Données en tant que code (b) Code en tant que données
(c) Aucune de ces réponses n’est (d) Toutes les réponses sont
vraie vraies
7- Les expressions lambda dans Java 8 sont basées sur
(a) Programmation procédurale (b) Programmation fonctionnelle
(c) Programmation des données (d) Toutes les réponses sont vraies
8- Lequel de ces mots clés ne fait partie de la gestion d’exceptions ?
(a) Catch (b) Thrown
(c) Finally (d) try
9- Exception se trouve dans quel package en Java ?
(a) [Link] (b) [Link]
(c) [Link] (d) [Link]
10- Quel méthode est utilisé pour mettre à jour les données dans une base de données en
Java ?
(a) Execute() (b) executeUpdate()
(c) executeQuery() (d) Aucune de ces réponses n’est
vraie
11- Quel est l’avantage d’utiliser PreparedStatement en Java ?
(a) Ralentissement des (b) Encourage l’injection SQL
performances
(c) Empêche l’injection SQL (d) Utilise plus de mémoire
12- Trouver la phrase qui n’est pas une caractérisation correcte du polymorphisme :
(a) Le polymorphisme est un mécanisme consistant à rassembler les données et les
méthodes au sein d’une structure en cachant l’implémentation de l’objet.
(b) Le polymorphisme signifie que la même opération peut se comporter
différemment sur différentes classes de la hiérarchie.
(c) Le polymorphisme offre la possibilité à plusieurs objets de natures différentes
d’exposer leur interface identique au système, et ainsi répondre à un même
message d’une manière qui leur est propre.
(d) Le polymorphisme consiste à autoriser le même code à être utilisé avec différents
types, ce qui permet des implémentations plus abstraites et générales.
13- Laquelle des opérations ci-dessus est interdite en Java ?
(a) Le upcasting implicite (b) Le upcasting explicite
(c) Le downcasting implicite (d) Le downcasting explicite
14- Quelle classe n’a pas de classe mère en Java ?
(a) Orpheline (b) String
(c) Object (d) Une classe abstraite
15- Qu’est-ce qui est faux pour les interfaces ?
(a) Une interface peut être le (b) Une interface déclare des méthodes
type d’une référence sans les implémenter
(c) Une interface peut être (d) Une interface peut être instanciée
implémentée
16- Pour les classes A et D définies comme suit :
class A { Class D extends A {
public static int f(int x) public static int f(int x)
{ return(x+5) ;} ; { return(x+4) ;} ;
public int g(int x){return (3) ;} public int g(int x) { return (x+8) ;}
} }
Qu’affichera le code suivant ?
D d=new D() ; A a=d ;
[Link](a.f(2)*a.g(3)) ;
(a) 18 (b) 21
(c) 66 (d) 77
17- On définit la méthode permuter
public static void permuter (String s1, String s2, int x1, int X2){
String tmp1=S1 ; s1=s2 ; s2=tmp1 ;
Int tmp2=x1 ; x1=x2 ; x2=tmp2 ;}
On l’applique dans le contexte suivant :
String a= "bon " ; String b= "jour " ; int c=3 ; int d=4 ;
permuter(a,b,c,d) ;
Quelles seront les valeurs de a,b,c,d après l’exécution de ce code ?
(a) "bon ", "jour ", 3, 4 (b) "jour ", "bon ", 3, 4
(c) "bon ", "jour ", 4, 3 (d) "jour ", "bon ", 4, 3
18- Pour la classe D définie comme suit :
class D {
public int x ;
public D() {x=3 ; } ;
public D(int a){ this() ; x=x+a ;} ;
public D(int a, int b) {this(b) ; x=x-a ;}} Qu’affichera le code suivant ?
D a=new D(5,6) ;
[Link](a.x) ;
(a) 1 (b) 2
(c) 3 (d) 4
19- Etant donné que la classe Triangle étend la classe Figure, trouvez une ligne correcte
parmi les suivantes :
(a) Triangle x= new Triangle () ; (b) Figure y=new Figure () ;
Object y= (Object) x ; Triangle x=(Triangle) y ;
Triangle z=y ; Figure z=x ;
(c) Triangle x=new Triangle () ; (d) Figure y=new Figure () ;
Figure y=x ; Triangle x=(Triangle)y ;
Triangle z=(Triangle) y ; Figure z=(Figure) x ;
20- Pour la classe définie comme suit :
public class Bidon {int x ;} ; Lequel des programmes est faux ?
(a) Bidon a=new Bidon(3) ; (b) Bidon a=new Bidon() ;
String s=[Link]() ;
(c) Bidon a=new Bidon() ; (d) Bidon a=new Bidon() ;
Boolean b=[Link]("bonjour ") ; boolean b=[Link](a) ;