我想知道抛出Exception
和抛出具体的异常如NullPointer Exception
之间的区别。
以我目前的了解,Exception
应该能够捕获任何类型的异常,而使用特定的异常则期望只会抛出该特定类型的异常。
例子:
void test(String testString) throws Exception;
vs
void test(String testString) throws NullPointerException;
如果这是正确的,那么对我来说总是抛出异常并且不命名特定的异常是有意义的。我在这里是否遗漏了什么重要的东西?这是否至少会影响性能?很多人都在考虑抛出和捕获异常之间的区别,但没有人问这个非常基本的问题。
我认为除了
Exception
之外,抛出任何异常都没有好处。