Mission 10: QCM


Question 1: Instruction throw

Quelle est la manière correcte de lancer une exception de type IllegalArgumentException signalant un nombre négatif ?

Question 2: Propagation d'exceptions

Qu'imprime le programme suivant

public static void main(String[] args) {
    System.out.println("Debut de main");
    task1();
    task2();
    System.out.println("Fin de main");
}

public static void task1() {
    System.out.println("Debut de task1");
    try {
        task3();
    } catch (Exception e) {
        System.out.println("task1 intercepte " + e.getMessage());
    }
    System.out.println("Fin de task1");
}

public static void task2() {
    System.out.println("Debut de task2");
    task3();
    System.out.println("Fin de task2");
}

public static void task3() {
    System.out.println("Debut de task3");
    task4();
    System.out.println("Fin de task3");
}

public static void task4() {
    System.out.println("Debut de task4");
    throw new RuntimeException("boum");
    System.out.println("Fin de task4");
}
Question 3: Déclaration throws

Quelle est la manière correcte de déclarer que la méthode readName peut causer une IOException ?

Question 4: Exceptions sous contrôle

Considérons le programme suivant

import java.io.*;
...

public static void main(String[] args) {
    processFile(args[0]);
}

public static void processFile(String filename) {
    try {
        String[] lines = readFile(filename);
        ...
    } catch (IOException e) {
        System.out.println("cannot read: " + e.getMessage());
    }
}

public static String[] readFile(String filename) {
    BufferedReader r = new BufferedReader(new FileReader(filename));
    ...
    for (String s = r.readLine(); s != null; s = r.readLine()) {
        ...
    }
    r.close();
    return ...;
}

Comment doit-on compléter les signatures des trois méthodes pour avoir toutes les déclarations throws nécessaires, sans déclarations inutiles ?

Question 5: Définition d'exceptions

Parmi les définitions suivantes, laquelle définit correctement une exception hors contrôle (unchecked) ?

Question 6: Les collections Java

Quel groupe d'affirmations est correct ?

Question 7: ArrayList<T>

Parmi les fragments de progamme suivants, lequel utilise correctement la classe ArrayList<T> ?

Question 8: Itérateurs

Parmi les fragments suivants, lequel utilise correctement un itérateur ?

Information

Author(s) Olivier BONAVENTURE
Deadline No deadline
Submission limit No limitation

Sign in