Sommaire

Validation des acquis : questions/réponses

Si l’état de vos connaissances sur ce chapitre vous semble suffisant, répondez aux questions ci-après.

1. Questions

1 On souhaite déterminer si l’instance d’une classe A que l’on pointe à un moment donné est dérivée ou non d’une classe donnée B. Il s’agit de le déterminer à l’exécution. Quel mot-clé ou opérateur utiliser ?

1. Opérateur is.

2. On tente une conversion implicite.

3. On ne peut pas le savoir à l’exécution.

2 On gère une collection d’objets avec un ArrayList qui contient plus de 1 000 instances et on s’aperçoit que les performances sont de plus en plus désastreuses. Pourquoi ? Et que faire ?

3 Des deux stratégies de conversion qui suivent, laquelle semble la plus pertinente ?

1. On tente la conversion et on voit si celle-ci a réussi ou non en considérant l’éventuel déclenchement d’une exception.

2. On évalue la conversion grâce aux mots-clés is et as.

4 On procède à une opération de boxing/unboxing clairement inappropriée. Que se passe-t-il alors ?

1. Rien. L’opération va tout de même se dérouler tel qu’espéré/attendu.

2. On a une erreur à la compilation.

3. À l’exécution, l’exception InvalidCastException est déclenchée. ...