我是否必须编写自己的例外? - Java

时间:2015-03-25 20:22:49

标签: java exception

我正在学习用Java编程。

我经常遇到我想要正确处理的异常。关于这一点,我问自己,当我想抛出一个有效的异常时,我是否必须创建自己的异常。

我知道API中已经有很多Java-Exceptions可以使用(显然很少能满足我想表达的确切情况)。

我可以想象这是正常的,但是对于我带来的结果来说,创建一个自己的异常似乎对我来说真的很昂贵。

如何在编程中完成这项工作?为每个案例创建例外是否正常?

非常感谢!

3 个答案:

答案 0 :(得分:1)

它在Java中得到很好的支持,并且相当容易实现。与理解发生的不需要的条件的好处相比,成本是名义上的。

创建一个扩展Exception类的类。

public class SampleException extends Exception{

  private String message;

  public SampleException() {
  }

  public SampleException(String message) {
    this.message = message;
  }

  public String getMessage() {
    return this.message;
  }
}

抛出自定义异常:

throw new SampleException("Something happen!!!")

答案 1 :(得分:0)

异常用于帮助您查看程序中发生错误的位置。有时您可能希望有一个自定义异常,以向最终用户显示一条消息,指出某些内容是意外的。

例如,如果用户在文本字段中输入信息并且他们在“邮政编码”字段中输入了一个字母而不是一个数字,那么您可能决定向他们显示一条消息并允许他们再次尝试。

创建自定义异常非常容易。所有异常都是Exception类中的子类,因此您需要做的就是在CustomException类中扩展Exception。

归结为什么 - 您对所有事情都有例外的设计决定是什么。如果你能为他们制作一个有效的论据,那就去吧。

答案 2 :(得分:0)

这完全取决于您希望用户端看到的内容。您绝对不希望最终用户看到由未使用try和catch包装的函数抛出的异常。这可能只是抛出堆栈错误并停止应用程序。你应该把你的方法包装在try和catch中。

我通常做的是,构建一个承载错误的XML文件,并根据匹配,我显示一个友好的错误,即如果用户不够先进,无法理解错误,大多数情况下都是如此。时间。