相关疑难解决方法(0)

为什么hibernate将HibernateException更改为(未选中)RuntimeException

我知道在某些版本中,Hibernate异常被更改为未选中.是什么原因?这是一个哲学问题还是实际问题?

java hibernate exception

12
推荐指数
1
解决办法
6384
查看次数

声明方法是否会抛出未经检查的异常是否有优势?

如果我有一个抛出未经检查的异常的方法,例如:

void doSomething(int i) {
  if (i < 0) throw new IllegalArgumentException("Too small");
  // ...
}
Run Code Online (Sandbox Code Playgroud)

明确声明该方法抛出异常是否有任何好处,即

void doSomething(int i) throws IllegalArgumentException {
  if (i < 0) throw new IllegalArgumentException("Too small");
  // ...
}
Run Code Online (Sandbox Code Playgroud)

与(或除了)描述javadoc中的行为相反:

/**
 * This method does something useful.
 * @param i some input value
 * @throws IllegalArgumentException if {@code i < 0}
 */
void doSomething(int i) {
  if (i < 0) throw new IllegalArgumentException("Too small");
  // ...
}
Run Code Online (Sandbox Code Playgroud)

我声称它的原因是没有用的throws是:

  • throws没有提供关于抛出异常的情况的信息,只提供可能抛出的异常;
  • 因为它是一个未经检查的异常,我不会被迫在调用代码时处理异常.我只会真的知道如果我去看看它的执行情况可能会被抛出 …

java exception unchecked-exception

12
推荐指数
2
解决办法
1160
查看次数

标签 统计

exception ×2

java ×2

hibernate ×1

unchecked-exception ×1