The Java викидає ключове слово використовується для оголошення винятку. Це дає інформацію програмісту про те, що може статися виняток. Отже, програмісту краще надати код обробки винятків, щоб можна було підтримувати нормальний потік програми.
Обробка винятків в основному використовується для обробки перевірених винятків. Якщо виникає будь-яка неперевірена виняткова ситуація, наприклад NullPointerException, це помилка програміста, що він не перевіряє код перед його використанням.
mvc у рамках Spring
Синтаксис Java throws
return_type method_name() throws exception_class_name{ //method code }
Який виняток слід оголосити?
років: Визначено лише як виняток, оскільки:
Перевага Java throws ключове слово
Тепер Checked Exception можна поширювати (пересилати в стеку викликів).
Він надає інформацію викликаючому методу про виняток.
Java викидає приклад
Давайте розглянемо приклад пропозиції Java throws, яка описує, що перевірені винятки можуть поширюватися за допомогою ключового слова throws.
Testthrows1.java
import java.io.IOException; class Testthrows1{ void m()throws IOException{ throw new IOException('device error');//checked exception } void n()throws IOException{ m(); } void p(){ try{ n(); }catch(Exception e){System.out.println('exception handled');} } public static void main(String args[]){ Testthrows1 obj=new Testthrows1(); obj.p(); System.out.println('normal flow...'); } }Перевірте зараз
Вихід:
755 мод
exception handled normal flow...
Правило: якщо ми викликаємо метод, який оголошує виняток, ми повинні або перехопити, або оголосити виняток.
Є два випадки:
Випадок 1: Обробка виняткової ситуації за допомогою блоку try-catch
Якщо ми обробляємо виняток, код виконуватиметься нормально незалежно від того, чи виникне виняток під час програми, чи ні.
Testthrows2.java
import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } public class Testthrows2{ public static void main(String args[]){ try{ M m=new M(); m.method(); }catch(Exception e){System.out.println('exception handled');} System.out.println('normal flow...'); } }Перевірте зараз
Вихід:
exception handled normal flow...
Випадок 2: оголосити виняток
- У випадку, якщо ми оголосимо виняток, якщо виключення не відбудеться, код буде виконано нормально.
- Якщо ми оголосимо виняток і виняток станеться, він буде викинутий під час виконання, оскільки кидки не обробляє виключення.
Давайте розглянемо приклади для обох сценаріїв.
java зворотний рядок
А) Якщо виключення не відбувається
Testthrows3.java
import java.io.*; class M{ void method()throws IOException{ System.out.println('device operation performed'); } } class Testthrows3{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } }Перевірте зараз
Вихід:
device operation performed normal flow...
B) Якщо трапляється виняток
Testthrows4.java
import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } class Testthrows4{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } }Перевірте зараз
Вихід:
Різниця між кидком і кидком
Натисніть на мене, щоб дізнатися більшеQue) Чи можемо ми повторно створити виняток?
Так, шляхом викидання того самого винятку в блок catch.