如何在Java中定义自定义异常类,最简单的方法是什么?我正在尝试以最简单的方式定义自己的异常类,这就是我得到的:public class MyException extends Exception {}public class Foo {
public bar() throws MyException {
throw new MyException("try again please");
}}这就是Java编译器所说的:cannot find symbol: constructor MyException(java.lang.String)我有一种感觉,这个构造函数必须继承自己java.lang.Exception,不是吗?
3 回答

素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
不,您不“继承”非默认构造函数,您需要定义在类中使用String的那个。通常,您super(message)
在构造函数中使用它来调用父构造函数。例如,像这样:
public class MyException extends Exception { public MyException(String message) { super(message); }}

慕盖茨4494581
TA贡献1850条经验 获得超11个赞
package customExceptions;public class MyException extends Exception{ public MyException(String exc) { super(exc); } public String getMessage() { return super.getMessage(); }}
import customExceptions.MyException;public class UseCustomException { MyException newExc=new MyException("This is a custom exception"); public UseCustomException() throws MyException { System.out.println("Hello Back Again with custom exception"); throw newExc; } public static void main(String args[]) { try { UseCustomException use=new UseCustomException(); } catch(MyException myEx) { System.out.println("This is my custom exception:" + myEx.getMessage()); } }}
添加回答
举报
0/150
提交
取消