Как написать UserException, который выдает несколько проверенных исключений - PullRequest
1 голос
/ 16 апреля 2011

как я могу написать класс UserException, который может генерировать несколько проверенных исключений Java?я должен расширить Throwable класс?было бы лучше, если бы вы могли дать мне простую демонстрацию этого броска двух исключений.Основная цель этого вопроса заключается в том, что я хочу уменьшить нет.попытаться поймать блок заявление в моих кодах.

Ответы [ 3 ]

0 голосов
/ 19 августа 2011

Роланд прав, метод может выдать только одно исключение.

Может быть, вы ищете иерархию исключений?

0 голосов
/ 19 августа 2011

Есть способ выбросить "множественные исключения", вроде.Вы можете бросить одно Исключение, завернутое в другое, например:

throw new UserException(new SomeException());

Когда это перехватывается, ловушка может выяснить причину, например:

catch (UserException e) {
    Exception cause = e.getCause(); // cause is an instance of SomeException
}

Таким образом, ловушка имеетдоступ к обоим исключениям.

Определить UserException как расширяющее исключение:

public class UserException extends Exception {

    private UserException(String message, Throwable cause) {
        super(message, cause);
    }

    private UserException(Throwable cause) {
        super(cause);
    }
}
0 голосов
/ 16 апреля 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...