Просто расширить Exception
:
public class InvalidTestScoreException extends Exception {
public InvalidTestScoreException() {
super("Invalid test score");
}
public InvalidTestScoreException(String message) {
super(message);
}
public InvalidTestScoreException(Throwable throwable) {
super(throwable);
}
}
С другой стороны, проверенные исключения изначально очень привлекательны. Но вы должны избегать их ненужного использования. Проверенные исключения используются, чтобы заставить программиста иметь дело с исключительным условием (что делает код более надежным, поскольку исключительное условие не может быть проигнорировано).
Кроме того, проверенное исключение используется, когда условие восстанавливаемое . Это означает, что когда вы используете проверенное исключение, существует разумное предположение, что программист может восстановиться после этого исключения.
Использовать исключения времени выполнения для указания ошибок программирования. Например, вы можете использовать IllegalArgumentException
, если предварительное условие для вашего метода нарушено. Учитывая ваш пример, это исключение может иметь больше смысла.
Если вы можете использовать соответствующее стандартное исключение вместо проверенного исключения, сделайте это вместо создания нового исключения, имитирующего существующую функциональность (DRY).