Vous êtes sur la page 1sur 3

QCM de cours du CM6

Enseignants CSC4002

CSC 4002

Télécom SudParis Octobre 2015


QCM de cours du CM6

1 QCM « héritage, paquetage et API »


Instructions. Pour chacune des questions, plusieurs réponses peuvent être correctes, vous pouvez donc
cocher plusieurs cases !

Les questions sont de deux niveaux de difficultés. Le niveau « intermédiaire » est précédé d’une astérisque
(signe « * ».
1. L’affirmation suivante est-elle correcte ? En Java, l’héritage est spécifié avec le mot clef extends suivi d’une liste
de classe de base.

faux OUI
Justification : Java n’accepte que l’héritage simple. Il n’y a donc qu’une classe après le mot clef extends.

vrai NON
Justification : Java n’accepte que l’héritage simple. Il n’y a donc qu’une classe après le mot clef extends.

2. L’affirmation suivante est-elle correcte ? En Java, toute classe, mis à part la classe java.lang.Object, est une
classe dérivée.

vrai OUI
Justification : Sans mot clef extends, la classe hérite de la classe java.lang.Object.

faux NON
Justification : Sans mot clef extends, la classe hérite de la classe java.lang.Object.

3. L’affirmation suivante est-elle correcte ? L’instruction « super() ; » appelle le constructeur de la classe de niveau
supérieur dans l’arbre de spécialisation.

vrai OUI
Cette instruction est similaire à l’instruction « this() ; » à la différence qu’elle appelle le
Justification :

constructeur de la classe parente sans argument.

faux NON
Cette instruction est similaire à l’instruction « this() ; » à la différence qu’elle appelle le
Justification :

constructeur de la classe parente sans argument.

4. L’affirmation suivante est-elle correcte ? Une référence d’une classe B peut référencer toute instance de la classe
B ou de ses classes dérivées.

vrai OUI

faux NON
Justification : C’est le polymorphisme. C’est un upcast.

5. * L’affirmation suivante est-elle correcte ? Une référence b d’une classe de base B, qui contient la référence d’un
objet d’une classe dérivée D de B, peut être mise dans une variable d de type référence de la classe D à la
condition d’être explicitement transtypée (en anglais, cast) vers le nouveau type (B).

vrai OUI
Justification : Il y a besoin de transtypage.

faux NON
Justification : Il y a besoin de transtypage.

6. L’affirmation suivante est-elle correcte ? Les membres protected d’une classe de base sont accessibles depuis les
classes enfants.

vrai OUI
La visibilité protected existe entre les visibilités private (aucune classe n’a accès au
Justification :

membre) et public (toutes les classes ont accès au membre) pour que les classes dérivées aient accès
au membre.

faux NON

Télécom SudParis — Enseignants CSC4002 — Octobre 2015 — CSC 4002 2


QCM de cours du CM6

La visibilité protected existe entre les visibilités private (aucune classe n’a accès au
Justification :

membre) et public (toutes les classes ont accès au membre) pour que les classes dérivées aient accès
au membre.

7. En Java, il est possible d’utiliser la méthode String toString() sur tous les objets de toutes les classes.

vrai OUI
Cette méthode est définie dans la classe java.lang.object. Toutes les classes dérivent de
Justification :

java.lang.Object et disposent donc de cette méthode, comme des méthodes equals et hashcode.

faux NON
Cette méthode est définie dans la classe java.lang.object. Toutes les classes dérivent de
Justification :

java.lang.Object et disposent donc de cette méthode, comme des méthodes equals et hashcode.

8. La classe publique Personne faisant partie du paquetage studs.personne doit se trouver dans un fichier d’une
sous arborescence studs/personne accessible depuis un chemin décrit dans l’environnement de compilation ou
d’exécution de java : CLASSPATH du JDK ou buildpath dans eclipse.

vrai OUI
Les fichiers sources ou les classes compilées de Java sont trouvées, par le compilateur ou
Justification :

la machine virtuelle java, à partir d’une liste de chemins et en utilisant les noms de paquetage et le
nom de la classe de manière bijective.

faux NON
Les fichiers sources ou les classes compilées de Java sont trouvées, par le compilateur ou
Justification :

la machine virtuelle java, à partir d’une liste de chemins et en utilisant les noms de paquetage et le
nom de la classe de manière bijective.

9. La classe Personne décrite dans le polycopié page 207 ne nécessite pas de méthode equals car cette méthode
est héritée de la classe Object et son fonctionnement est correct puisque les attributs de la classe personne
présentent un caractère d’unicité du fait de la présence du numéro de sécurité sociale parmi eux.

faux OUI
La méthode equals de Object offre un service minimum équivalent à l’utilisation de l’opéra-
Justification :

teur ==. Elle n’offre aucune caractéristique relativement à l’égalité en terme de sens que nous devons
obtenir en comparant les attributs de la classe. Dans ce cas, la méthode doit comparer les numéros
de sécurité sociale de l’objet courant et de l’autre objet.

vrai NON
La méthode equals de Object offre un service minimum équivalent à l’utilisation de l’opéra-
Justification :

teur ==. Elle n’offre aucune caractéristique relativement à l’égalité en terme de sens que nous devons
obtenir en comparant les attributs de la classe. Dans ce cas, la méthode doit comparer les numéros
de sécurité sociale de l’objet courant et de l’autre objet.

10. La définition suivante : Integer i = new Integer(12) ; crée un objet de la classe Integer et initialise la valeur de
son attribut à 12.

vrai OUI
En effet la classe Integer permet d’encapsuler un attribut de type entier. Elle est la clase
Justification :

pivôt pour passer d’un entier à une chaîne de caractères et réciproquement.

faux NON
En effet la classe Integer permet d’encapsuler un attribut de type entier. Elle est la classe
Justification :

pivôt pour passer d’un entier à une chaîne de caractères et réciproquement.

Télécom SudParis — Enseignants CSC4002 — Octobre 2015 — CSC 4002 3