Різниця між перевіреним та неперевіреним винятком

Обробка винятків у Java - один із потужних механізмів обробки конкретних помилок, які виникають у кодовій послідовності під час виконання. Виняток - це не що інше, як помилка виконання, яка порушує нормальний потік програми.

Зазвичай це відбувається у фрагменті коду, і коли це відбувається, створюється об'єкт, що представляє цей виняток, і кинутий у методі, який його спричинив. В результаті програма або програма порушуються, через що програма аномально припиняється, що не рекомендується. Ось чому ці винятки мають бути оброблені, і саме тут випливає механізм поводження з винятками.

Є два типи винятків, які існують у Java - перевірене та невірно виняте. У цій статті ми детально обговоримо, що перевіряється та не перевіряється виключенням і коли їх використовувати, і нарешті, ми побачимо різницю між двома.

Що таке перевірена виняток у Java?

Це винятки, які перевіряються та обробляються під час компіляції. Java визначає кілька класів виключень у стандартному пакеті java.lang, а найпоширенішими винятками є підкласи стандартного типу Виконання.

Ті винятки, які трапляються в районах, що не перебувають під безпосереднім контролем програми, відомі як перевірені винятки. Якщо метод кидки перевірений виняток під час компіляції, який не може сам обробити його, тоді він повинен обробляти виняток у a виловити заблокувати або оголосити виняток, використовуючи кидки ключове слово, інакше це призведе до помилки компіляції. Компілятор вивчає тип об'єкта виключення для кожного кинути оператор, і якщо він відображається перевіреним, компілятор перевіряє вихідний код, щоб переконатися, що виняток обробляється в методі, де він кидається або оголошується, щоб з ним можна було обробляти далі.

Усі винятки, описані в Виняток які є його прямими підкласами, крім: Виконання називаються перевіреними винятками. Тепер, коли використовувати перевірений виняток? Ви можете використовувати перевірений виняток, коли ви точно знаєте, що робити, коли Виняток виникає або коли шанси на невдачу більше. Деякі приклади перевірених винятків у бібліотеці Java включають IOException, DataAccessException, IllegalAccessException, InterruptException, ClassNotFoundException, InvocationTargetException тощо.

Що таке неперевірене виключення на Java?

Це винятки, які не перевіряються під час компіляції. Неперевірений виняток являє собою умову, яка, як правило, відображає помилки в логіці програми, і яку неможливо відновити під час виконання.

Простіше кажучи, неперевірений виняток - це виняток, який не потрапляє в приміряти блок. Їх не потрібно чітко ловити. Насправді, коли відбувається неперевірене виключення, Java обробляє виняток автоматично. Неперевірені винятки здебільшого трапляються через помилки програмування, наприклад, при доступі до елемента поза зв'язуванням масиву або методом доступу до нульового об’єкта. У Java всі винятки, що підлягають передачі, є перевіреними винятками, тоді як винятки є прямими підкласами Помилка і Виконання є неперевіреними винятками.

Найкраща частина неперевіреного винятку - це те, що він не зменшує читабельність коду, зберігаючи чистий код клієнта. Деякі приклади неперевірених винятків включають ArithmeticException, ClassCastException, NullPointerException, ArrayIndexOutOfBound, IllegalArgumentException, IllegalStateException, ArrayStoreException, SecurityException тощо.

Різниця між перевіреним та неперевіреним винятком

Визначення перевіреного та невіртованого винятку

Перевірена і неперевірена виняток - це два типи винятків, які існують у Java, щоб забезпечити нормальний потік програми. Обидва мають однакову мету - обробляти винятки на Java, і хоча немає різниці у функціональності, немає єдиного правила, яке визначає, коли використовувати перевірені та коли використовувати неперевірені винятки. Перевірений виняток - це виняток, який перевіряється під час компіляції, тоді як Невірно виняток - це той, який не перевіряється під час компіляції..

Основи перевіреного та неперевіреного винятку

Перевірений виняток відноситься до недійсних сценаріїв, які виникають поза безпосереднім контролем програми, тоді як неперевірений виняток відноситься до помилок у програмі або помилок у логіці програми, які неможливо відновити під час виконання.

Обробка винятків

Якщо метод видає перевірений виняток, компілятор перевірить, чи обробляє метод винятком за допомогою блоку try-catch, або задасть виняток за допомогою ключового слова кидків. Якщо метод не надає код обробки, він покаже помилку компіляції. Навпаки, програма компілюється просто чудово, оскільки компілятор не перевіряє наявність неперевірених винятків під час компіляції.

Причина перевірених і неперевірених винятків

Винятки, які не є результатом RunTimeException, часто обробляються, тоді як, як винятки трапляються під час виконання, рідко обробляються. Перевірене виняток виникає, коли шанси на збій занадто високі. З іншого боку, неперевірене виняток виникає здебільшого через помилки програмування. Усі винятки в класах RuntimeException та Error є неперевіреними винятками..

Приклади перевірених та неперевірених винятків

Деякі приклади перевірених винятків - IOException, DataAccessException, IllegalAccessException, InterruptException, ClassNotFoundException тощо. Приклади неперевірених винятків включають NullPointerException, ArithmeticException, ArrayIndexOutOfBound, IllegalArgumentException, IllegalStateException, ArrayStoreException, SecurityException тощо.

Перевірено проти неперевіреного винятку: порівняльна діаграма

Підсумок перевірених та невіртованих винятків

Перевірена і неперевірена виняток - це два типи винятків, які існують у Java. Хоча функціональність однакова для обох винятків, вони мають справедливу частку відмінностей. Основна відмінність перевірених і неперевірених винятків полягає в тому, що перший перевіряється компілятором, тоді як другий уникає повідомлення про компілятор. Винятки, які перевіряються та обробляються під час компіляції, - це винятки, тоді як винятки, які не перевіряються та не обробляються під час компіляції, є неперевіреними винятками. У цій статті пояснюється, що перевіряється, і що є неперевіреним винятком, коли їх використовувати, та пояснюється різниця між ними.