Spec-Zone .ru
спецификации, руководства, описания, API
След: Существенные Классы
Урок: Исключения
Определение Исключений, выданных Методом
Домашняя страница > Существенные Классы > Исключения

Определение Исключений, выданных Методом

Предыдущий раздел показал, как записать обработчик исключений для writeList метод в ListOfNumbers class. Иногда, для кода уместно поймать исключения, которые могут произойти в пределах этого. В других случаях, однако, лучше позволить методу далее дескриптор стека вызовов исключение. Например, если Вы обеспечивали ListOfNumbers class как часть пакета классов, Вы, вероятно, не могли ожидать потребности всех пользователей Вашего пакета. В этом случае лучше не поймать исключение и позволить методу далее стек вызовов, чтобы обработать это.

Если writeList метод не ловит проверенные исключения, которые могут произойти в пределах него, writeList метод должен определить, что может выдать эти исключения. Давайте изменим оригинал writeList метод, чтобы определить исключения это может бросить вместо того, чтобы ловить их. Чтобы напомнить Вам, вот, оригинальная версия writeList метод, который не будет компилировать.

// Note: This method won't compile by design!
public void writeList() {
    PrintWriter out = new PrintWriter(new FileWriter("OutFile.txt"));
    for (int i = 0; i < SIZE; i++) {
        out.println("Value at: " + i + " = " + vector.elementAt(i));
    }
    out.close();
}

Определить это writeList может выдать два исключения, добавить a throws пункт к объявлению метода для writeList метод. throws пункт включает throws ключевое слово, сопровождаемое списком разделенных запятой значений всех исключений, выданных тем методом. Пункт идет после имени метода и списка параметров и перед фигурной скобкой, которая определяет контекст метода; вот пример.

public void writeList() throws IOException, ArrayIndexOutOfBoundsException {

Помните это ArrayIndexOutOfBoundsException исключение непроверенное; включая это в throws пункт не обязателен. Вы могли только записать следующий.

public void writeList() throws IOException {

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Соединение Всего этого
Следующая страница: Как Выдать Исключения