如何在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继承,不是吗?

回答:

不,你不“继承”非默认构造函数,你需要定义一个在你的类中使用一个String。通常您在构造函数中使用super(message)来调用您的父构造函数。例如,像这样:

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

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: How to define custom exception class in Java, the easiest way?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

74 − 68 =