Vous êtes sur la page 1sur 6

Test et QCM JAVA

Auteur Agns Guerraz


Date : Octobre 2006
Module :
TC2
Instructions pour le QCM :
Ce Test / QCM sert vrifier vos connaissances du langage java.
Cochez le ou les rponses parmi les choix proposs, vous pouvez ajouter des explications
supplmentaires aux choix que vous proposez.
Rpondez par des phrases aux questions poses.
1.

Classe et constructeur
1.

2.

3.

4.

Donner la dfinition d'une classe


____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
Quelle est la visibilit d'une classe publique, quelle est la visibilit par dfaut?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
Qu'est-ce qu'une classe abstraite ? Quelle est la syntaxe Java pour la dfinir ?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
Qu'est-ce qu'une mthode de classe? Quelle syntaxe java permet de dfinir une telle
mthode ?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________

5.

Qu'est-ce qu'une sous-classe d'une classe ? quelle syntaxe java permet de dfinir une
sous-classe?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________

6.

Que se passe-t-il lorsqu'une classe possde le modificateur final ?


____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________

7.

A quoi sert un constructeur ?


____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
8. Que fait le compilateur lorsque le programmeur n'a pas dfini de constructeur ?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
9. Que fait l'instruction super(); ?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
10. Cocher la ou les rponses correctes
a Une classe peut implmenter plusieurs interfaces mais doit tendre une seule classe.
b Une classe peut implmenter plusieurs classes mais doit tendre une seule interface.
c Une classe peut implmenter plusieurs classes et peut tendre plusieurs interfaces.
d Une classe doit implmenter une seule interface et tendre une seule classe.
2.

Chane de dveloppement java

1. Java est un langage


a
b
c
d

Compil
Interprt
Compil et interprt
Ni compil ni interprt

2. La commande permettant d'excuter une application java est :


a
b
c

javac
java
exec

3. La commande permettant de compiler un programme java est :


a
b
c

javac
java
exec

4. Un fichier contenant un programme source java doit possder l'extension :


a
b
c
d

jav
exe
class
java

5. Quand un programme java est compil, le fichier gnr possde l'extension :


a
b
c
d

jav
exe
class
java

6. Quand un programme java est compil, le fichier gnr est plac dans :
a le rpertoire courant le rpertoire du fichier source
b le rpertoire du dessus
c le rpertoire du dessous
d le rpertoire "java"
7. Quels sont les noms possibles pour un fichier contenant la classe "Voiture" ?
a Voiture
b voiture
c TestVoiture.java
d Voiture.java
e voiture.java
f voiture.Java
8. Pour excuter une application java, la classe correspondante doit obligatoirement contenir
une mthode main.
a Faux
b Vrai
9. Pour excuter une application java dont le programme source est dans le fichier
"Test.java", je dois taper :
a javac Test
b javac Test.java
c java Test.java
d javac Test
e java Test
f java Test.class
10. Si ce programme est dfini dans un package de nom MonAppli, quelle commande je dois
lancer et depuis quel rpertoire ?
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________

3. Programmation
1. Combien dinstances de la classe A cre le code suivant ?
A x,u,v;
x=new A();
A y=x;
A z=new A();

a Aucune
b Cinq
c Trois
d Deux
2. Pour la classe B dnie comme suit:

class B {
public B(){
System.out.print(Ciao);
};
public B(int i) {
this();
System.out.println(Bonjour +i);};
}

quel sera le rsultat de l'appel suivant ?


B monB=new B(2007);

a
b
c
d

une erreur de compilation


une erreur dexcution
l'affichage sur la console de "CiaoBonjour 2007"
l'affichage sur la console de "Bonjour 2007"

3. Hritage, attributs et mthodes (1)


class ClasseA { double x ; }
class ClasseB extends ClasseA { int x ; }
class ClasseC extends ClasseB { char x ; }

Dans une mthode de la ClasseC, quelle variable (en donner le type) est dsigne par :
x :
this.x :
super.x :
((ClasseB) this).x :
((ClasseA) this).x :
super.super.x :

4. Hritage, attributs et mthodes (2)


class ClasseA{
public void affiche(){
System.out.println("je suis un objet de ClasseA") ;}
}
class ClasseB extends ClasseA{
public void affiche(){
System.out.println("je suis un objet de ClasseB")} ;
}

Quel est le rsultat de l'excution du programme suivant ?


public class ClasseTest{
public void main(String [] args) {
ClasseB b = new ClasseB() ;
b.affiche() ;
}
}

5. Hritage, attributs et mthodes (3)


class ClasseA{
public void affiche(){
System.out.println("je suis un objet de ClasseA") ;}
}
class ClasseB extends ClasseA{
// pas de redfinition de la mthode affiche
}
class ClasseC extends ClasseB{
public void affiche(){
super.affiche() ;
System.out.println("je suis un objet de ClasseC");}
}

Quel est le rsultat de l'excution du programme suivant ?


public class ClasseTest{
public void main(String [] args) {
ClasseC c = new ClasseC() ;
c.affiche() ;
}
}

6. Hritage, attributs et mthodes (4)


class ClasseA{
public int i = 12 ;
public int f(){return i;}
public static char g(){return 'A';}
}
class ClasseB extends ClasseA{
public int i = 6 ;
public int f(){return -i;}
public static char g(){return 'B';}
}

La suite d'instructions ci-dessous est dfinie dans la mthode main() de la classe


ClasseTest. Complter le tableau suivant de faon indiquer l'action effectue par
l'excution de chacune des instructions de ce programme :
instruction
valeur affiche
commentaire
ClasseB b = new ClasseB() ;
System.out.println(b.i);
System.out.println(b.f());
System.out.println(b.g());
System.out.println(ClasseB.g());
ClasseA a = (ClasseA) b ;
System.out.println(a.i);
System.out.println(a.f());
System.out.println(a.g());
System.out.println(ClasseA.g());

7 Exceptions
7.1/ Quels types d'exception peuvent tre attraps par le cath() suivant ?
catch (Exception e) {
}
7.2/ Quel est l'inconvnient d'employer ce type de cath() d'exception ?
8 E/S
Que retourne une lecture squentiel pour nous prvenir que nous sommes arriv la fin du
fichier?
a EndOfFile()
b endOfFile()
c EndOffile()
9 E/S
Quel type donne nous renvoie une lecture dans un fichier?
a Un boolen
b Un substring()
c Un String
10 E/S
Ecrire le rsultat de l'excution du code suivant:
StringTokenizer tokens = new StringTokenizer("These are the times.");
System.out.println( tokens.countTokens()); // Should be 4.
while (tokens.hasMoreTokens())
System.out.println( tokens.nextToken());

11 E/S
L'objet appel in, nous permet d'obtenir des caractres partir du dossier mydata.txt, il est
pass par le FileReader et plus tard pass par le BufferedReader comme suit:
BufferedReader in = new BufferedReader(new FileReader("mydata.txt"));

Ecrire le code permettant de lire une ligne partir du fichier.

Vous aimerez peut-être aussi