Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Створення Користувацьких Винятків | Розділ
Practice
Projects
Quizzes & Challenges
Вікторини
Challenges
/
Обробка Виключень у Java

bookСтворення Користувацьких Винятків

Свайпніть щоб показати меню

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

Щоб створити кастомний виняток, потрібно визначити новий клас, який наслідує або від Exception, або від RuntimeException. Якщо ваш виняток має бути перевіряємим (тобто компілятор змушує обробляти його через блок try-catch або оголошувати через throws), наслідуйте від Exception. Якщо виняток має бути неперевіряємим (не контролюється компілятором), наслідуйте від RuntimeException. Ваш кастомний виняток може містити конструктори, поля та методи, як і будь-який інший клас, але зазвичай достатньо надати хоча б конструктор, який приймає повідомлення з описом помилки.

Main.java

Main.java

copy
123456789101112131415161718192021222324
package com.example; class InvalidAgeException extends Exception { public InvalidAgeException(String message) { super(message); } } public class Main { public static void checkAge(int age) throws InvalidAgeException { if (age < 18) { throw new InvalidAgeException("Age must be at least 18."); } System.out.println("Access granted. Age is valid."); } public static void main(String[] args) { try { checkAge(15); } catch (InvalidAgeException e) { System.out.println("Caught exception: " + e.getMessage()); } } }

У наведеному вище коді ви визначаєте власний перевіряємий виняток, створюючи клас InvalidAgeException, який наслідує Exception. Цей клас має конструктор, що приймає повідомлення про помилку. Метод checkAge генерує InvalidAgeException, якщо вказаний вік менше 18 років.

У методі main викликається checkAge(15), що спричиняє виникнення винятку. Блок try-catch перехоплює виняток і виводить його повідомлення. Цей підхід демонструє, як можна використовувати власні винятки для обробки конкретних помилкових ситуацій у зрозумілий і структурований спосіб.

question mark

Що потрібно зробити, щоб створити власний перевіряємий виняток у Java?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 8

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 1. Розділ 8
some-alt