Java中的异常规范有什么好处?
作者:互联网
我从C来到Java.
在Java和C中,我们都可以指定异常.看起来像这样:
void function_name() throw(Exception)
{
...
if (error)
{
throw Exception("Error");
}
...
}
据我所知,在C中编写异常规范被认为是一种不好的做法.与C不同,在Java中,我们必须这样做.所以,我的问题是:
用Java编写异常规范有什么好处?
解决方法:
您只需在方法签名中指定检查的异常(Exception类的子类).无需指定未经检查的异常(RuntimeException类的子类).
在方法签名中指定异常是语言语义定义的固有Java惯例.但是对此也有很多争议.一些团队和项目甚至认为这是不好的做法,并且仅使用未经检查的异常.
通常,作为一种好的做法,当您将其定义为方法约定的一部分时,应抛出一个检查异常,即方法调用者必须知道某些特定的(相当可能和可恢复的)错误类型,并捕获并处理该错误,或将其传递给调用堆栈.未经检查的异常通常表示方法代码中的某些内部错误,因此无需捕获.
标签:exception,specifications,java,c-4 来源: https://codeday.me/bug/20191028/1951091.html