Sobes.tech
Junior — Middle

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

sobes.tech AI

Отговор от AI

В Java, за да гарантирате, че кодът, който го извиква, задължително ще обработи изключението, трябва да създадете потребителско изключение, което наследява от класа Exception (но не и от RuntimeException). Тези изключения се наричат проверяеми (checked exceptions).

Пример за създаване на потребителско проверявано изключение:

public class MyCheckedException extends Exception {
    public MyCheckedException(String message) {
        super(message);
    }
}

В метода това изключение се обявява чрез throws:

public void myMethod() throws MyCheckedException {
    // логика
    throw new MyCheckedException("Грешка");
}

Кодът, който го извиква, е задължен да обработи това изключение или чрез try-catch, или да го обяви нататък чрез throws.