【问题标题】:User defined exception are checked or unchecked exceptions用户定义的异常是已检查或未检查的异常
【发布时间】:2012-05-02 14:25:28
【问题描述】:

在我的 Web 应用程序中创建了一个用户定义的异常扩展了 Exception。它是经过检查还是未经检查的异常

public class InvalidDataException extends Exception{


        public InvalidDataException() {
        super();
        // TODO Auto-generated constructor stub
    }
    /**
     * @param arg0
     */
    public InvalidDataException(String message) {
        super(message);
        // TODO Auto-generated constructor stub
    }
}

【问题讨论】:

    标签: java


    【解决方案1】:

    只有那些属于RuntimeException 子类的异常才被视为未检查

    你的不是,因此是一个检查异常。

    【讨论】:

    • 但默认运行时异常会随着异常扩展。我可以说未经检查的异常
    • @user1357722:如果您想要一个未经检查的异常,请扩展 RuntimeException。如果你不这样做,不要。就这么简单。
    【解决方案2】:

    这是一个检查异常类。任何扩展 Exception 类的类都将是用户定义的 Checked 异常类。任何扩展 RuntimeException 的类都将是 Unchecked 异常类。

    【讨论】:

      【解决方案3】:

      你可以使用IllegalArgumentException

      此异常未检查,而您的异常已检查为 @duffymo 和 @aix 评论。

      【讨论】:

        【解决方案4】:

        用户定义的异常是已检查的异常,因为它们是使用 Exception 类扩展的,该类是所有发生异常的超类,而未检查的异常是使用运行时异常扩展的。

        【讨论】:

          【解决方案5】:

          有两个类调用为部分检查异常。

          1.) 异常类

          2.) 可抛出类

          它调用部分检查,因为它们的一些子类是未检查的。所以你已经扩展了 Exception 类然后它是 Checked 异常

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-06-24
            • 1970-01-01
            相关资源
            最近更新 更多