Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Ключевое слово throws в Java: Примеры и лучшие практики

Ключевое слово throws в Java

Ключевое слово throws в Java позволяет объявить, что метод может выбросить одно или несколько исключений. Явно перечисляя эти потенциальные сбои, вы сигнализируете вызывающим сторонам, что они должны либо обработать исключение, либо распространить его дальше, сохраняя код чистым и надежным.

Когда вы вызываете библиотечный метод, который может выбросить проверяемое исключение, Java заставляет вас обработать его. Обычно вы бы обернули рискованный код в блок try-catch:

Ключевое слово throws в Java: Примеры и лучшие практики

import java.io.*;
class File1 {
    public static void main(String[] args) {
        try {
            FileWriter file = new FileWriter("c:\\Data1.txt");
            file.write("Guru99");
            file.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Если вы опустите try-catch, компилятор отвергнет программу. Хотя обработка каждого исключения индивидуально может быть многословной, Java предлагает более чистый альтернативный вариант: объявить исключение в сигнатуре метода с помощью throws и позволить вызывающему решить, как его обработать.

Синтаксис throws

public void methodName(Parameters) throws Exception1, Exception2, … {
    …
}

Пример throws

Ниже приведен тот же пример записи в файл, но метод main объявляет, что он выбрасывает IOException, вместо того чтобы ловить его:

import java.io.*;
class File1 {
    public static void main(String[] args) throws IOException {
        FileWriter file = new FileWriter("c:\\Data1.txt");
        file.write("Guru99");
        file.close();
    }
}

Перед запуском этого кода создайте пустой файл с именем Data1.txt на диске C:\. Java предлагает два способа удовлетворить требование компилятора, что проверяемые исключения должны быть адресованы:

  1. Обернуть рискованный код в блок try-catch.
  2. Объявить метод с throws и распространить исключение на вызывающего.

Выбор правильного подхода зависит от контекста. Если метод является частью публичного API, распространение исключения часто сохраняет чистоту поверхности API и заставляет вызывающих обрабатывать сбои явно.

Throw vs Throws

throw throws
Используется для создания и выброса нового экземпляра исключения. Используется в сигнатуре метода для объявления исключений, которые метод может распространить.
Может выбросить только одно исключение за раз. Может перечислить несколько типов исключений, разделенных запятыми.
Пример: Пример:
throw new IOException("cannot open connection"); throws IOException, ArrayIndexOutOfBoundsException

Резюме

Ключевое слово throws необходимо для четкого распространения исключений в Java. Когда метод объявляет throws, любой вызывающий должен обработать или дальше объявить исключение, гарантируя, что условия ошибок никогда не игнорируются молча.

java

  1. Ключевое слово final в Java: переменные, методы и классы
  2. Исключения в Java: типы, иерархия и обработка
  3. Обработка исключений в Java: try, catch, finally, throw и throws
  4. Метод String.length() в Java: как получить длину строки (пример)
  5. Понимание String.charAt() в Java: синтаксис, возвращаемый тип, исключения и пример
  6. Метод String.contains() в Java: как проверить наличие подстроки — примеры
  7. Освоение String.endsWith() в Java: проверка суффиксов строки с примерами
  8. Чтение файлов в Java с BufferedReader — Практическое руководство с примерами
  9. Алгоритм сортировки вставками в Java: понятный пример и пошаговое руководство
  10. Сортировка выбором в Java: пошаговый пример и полный код