Если вы используете диалоговое окно нового класса в Eclipse, вы можете просто установить поле Суперкласса на java.lang.Exception
и отметить «Конструкторы из суперкласса», и оно сгенерирует следующее:
package com.example.exception;
public class MyException extends Exception {
public MyException() {
// TODO Auto-generated constructor stub
}
public MyException(String message) {
super(message);
// TODO Auto-generated constructor stub
}
public MyException(Throwable cause) {
super(cause);
// TODO Auto-generated constructor stub
}
public MyException(String message, Throwable cause) {
super(message, cause);
// TODO Auto-generated constructor stub
}
}
В ответ на вопрос ниже о том, что не следует вызывать super()
в конструкторе defualt, Oracle имеет это, чтобы сказать :
Примечание: Если конструктор не вызывает явно конструктор суперкласса, компилятор Java автоматически вставляет вызов в конструктор суперкласса без аргументов.