Flashcards : POO Java : polymorphisme et collections — 44 cartes

Toutes les cartes

1Question

Qu'est-ce que le polymorphisme en programmation orientée objet ?

Réponse

Le polymorphisme découple le quoi du comment via une interface en super-classe et plusieurs implémentations en sous-classes.

2Question

Quel est l'effet de l'upcasting sur le type précis d'un objet ?

Réponse

L'upcasting fait oublier intentionnellement le type précis d'un objet.

3Question

Que permet de faire l'upcasting avec les sous-classes d'une super-classe ?

Réponse

L'upcasting permet de traiter sans distinction les sous-classes d'une même super-classe.

4Question

Dans quel ordre sont appelés les constructeurs lors de la construction d'un objet ?

Réponse

Le constructeur de la super-classe est appelé récursivement jusqu'à la racine, puis ceux des membres dans l'ordre de déclaration.

5Question

Que se passe-t-il après l'appel des constructeurs des membres lors de la construction d'un objet ?

Réponse

Le corps du constructeur de la classe est exécuté après les constructeurs des membres.

6Question

Qu'est-ce qu'une classe abstraite en programmation ?

Réponse

Une classe qui ne peut pas être instanciée mais peut contenir des constructeurs.

7Question

Que permet de factoriser une classe abstraite ?

Réponse

Les propriétés communes entre classes.

8Question

Quelle condition impose une méthode abstraite à sa classe ?

Réponse

La classe doit être déclarée abstract.

9Question

Que doit faire une sous-classe d'une classe avec méthodes abstraites ?

Réponse

Implémenter les méthodes abstraites ou être déclarée abstract.

10Question

Quelle est la forme syntaxique d'une méthode abstraite ?

Réponse

public abstract type nomméméthode(…); sans corps de méthode.

11Question

Qu'est-ce qu'une interface en programmation orientée objet ?

Réponse

Une interface définit un contrat de services par des signatures de méthodes sans implémentation.

12Question

Que fait le mot-clé implements dans une classe Java ?

Réponse

Il rend la classe conforme à une ou plusieurs interfaces et oblige à implémenter toutes leurs méthodes publiques.

13Question

Quelles sont les propriétés implicites des méthodes dans une interface ?

Réponse

Les méthodes sont implicitement abstract et public.

14Question

Quelles sont les propriétés implicites des données dans une interface ?

Réponse

Les données sont implicitement static et final.

15Question

Quelle forme d'héritage les interfaces permettent-elles ?

Réponse

Elles permettent une forme d'héritage multiple.

16Question

Comment les interfaces influencent-elles le couplage entre classes ?

Réponse

Elles diminuent le couplage en limitant la collaboration aux services nécessaires.

17Question

Quand une généralisation est-elle incorrecte selon les critères de classification ?

Réponse

Quand des sous-classes de même niveau reposent sur des critères hétérogènes.

18Question

Quelle erreur montre l'exemple Salarié, Libéral et Sportif ?

Réponse

Une généralisation incorrecte due à des critères de classification différents.

19Question

Qu'est-ce qu'une confusion de niveau d'abstraction ?

Réponse

Une relation entre concepts à niveaux conceptuels différents.

20Question

Quels concepts illustrent une confusion de niveau d'abstraction ?

Réponse

Modèle de voiture, Voiture et Propriétaire.

21Question

Que fournit l’API Collections ?

Réponse

Des interfaces, des implémentations optimisées et des utilitaires pour les collections.

22Question

Quels types d’éléments l’API Collections décrit-elle ?

Réponse

Les conteneurs via des interfaces.

23Question

Quels utilitaires principaux comprend l’API Collections ?

Réponse

Les interfaces Comparator et Iterator, et les classes Collections et Arrays.

24Question

Qu'est-ce que l'interface Collection abstrait ?

Réponse

Le comportement d'un conteneur d'objets.

25Question

Qu'imposent les méthodes de Collection qui comparent des objets comme contains() ?

Réponse

Elles testent l'égalité définie par equals().

26Question

Qu'est-ce qu'une List en Java ?

Réponse

Une collection ordonnée qui accepte les doublons.

27Question

Quelles opérations spécifiques possède une List ?

Réponse

get par index, indexOf et remove par index.

28Question

Quelles sont les principales implémentations de List ?

Réponse

ArrayList et LinkedList.

29Question

Qu'est-ce qu'une Map en Java ?

Réponse

Une Map associe des clés uniques à des valeurs.

30Question

Une Map est-elle une sous-interface de Collection ?

Réponse

Non, une Map n'est pas une sous-interface de Collection.

31Question

Qu'impose l'utilisation d'objets comme clés dans une Map ?

Réponse

Ils doivent redéfinir Object.hashCode().

32Question

Quelle méthode est utilisée pour comparer les clés dans une Map ?

Réponse

La méthode equals() est utilisée pour comparer les clés.

33Question

Comment HashMap implémente-t-elle Map ?

Réponse

Avec une table de hachage non ordonnée et non synchronisée.

34Question

Comment TreeMap implémente-t-elle Map ?

Réponse

Avec un arbre binaire équilibré ordonné et non synchronisé.

35Question

Quelle est la caractéristique principale de Hashtable ?

Réponse

C'est une implémentation synchronisée de Map.

36Question

De quelle version de Java provient la classe Hashtable ?

Réponse

Elle provient de Java 1.1.

37Question

Comment ArrayList implémente-t-elle List ?

Réponse

Avec un tableau.

38Question

Pourquoi ArrayList est-elle ralentie par les insertions au milieu ?

Réponse

Parce que cela nécessite de décaler les éléments du tableau.

39Question

Comment LinkedList implémente-t-elle List ?

Réponse

Avec une liste doublement chaînée dynamique.

40Question

Pour quelles structures utilise-t-on Collections.sort(List) et Collections.sort(List, Comparator) ?

Réponse

Pour trier une List.

41Question

Quelles classes sont utilisées pour un Map trié ?

Réponse

SortedMap et TreeMap.

42Question

Quelle méthode impose Comparable pour définir un ordre naturel ?

Réponse

compareTo(Object o).

43Question

Quelle méthode Comparator utilise-t-il pour comparer deux objets ?

Réponse

compare(Object o1, Object o2).

44Question

Que doivent retourner compareTo et compare selon la règle ?

Réponse

Un entier négatif, zéro ou positif selon l'ordre des objets.

Teste-toi avec le QCM

Teste tes connaissances avec un QCM de 20 questions sur POO Java : polymorphisme et collections.

1. Quel principe permet de séparer l’interface commune d’un objet de la manière concrète dont chaque sous-classe réalise cette interface ?

2. Lorsqu’une référence de super-classe désigne un objet d’une sous-classe, quelle opération permet de traiter cet objet sans tenir compte de son type précis ?

Faire le QCM →

Consultez la fiche

Révisez le cours complet dans la fiche de révision de POO Java : polymorphisme et collections.

Voir la fiche →

Cours similaires

Crée tes propres flashcards

Importe ton cours et l'IA génère des flashcards en 30 secondes.

Générateur de flashcards