可能重复:
何时选择已检查和未检查的异常
你好!
因此,我仍然对何时抛出已检查或未检查的异常感到满意。我想知道在这种情况下其他人认为最合适的是:
class Correlation<T>
{
private final T object1, object2;
private final double correlationCoefficient;
public Correlation(T object1, T object2, double correlationCoefficient)
{
if(Math.abs(correlationCoefficient) > 1.0 || (object1.equals(object2) && correlationCoefficient != 1.0))
throw new IllegalArgumentException();
this.object1 = object1;
this.object2 = object2;
this.correlationCoefficient = correlationCoefficient;
}
}
因此,在这种情况下,我想抛出一个运行时异常,因为我无法轻易地从用户传入错误数据的情况中恢复过来。我想事先指出,我无法控制传入的数据。如果可以的话,我会创建一个接口来保证构造函数中的条件为真。但是,对于已经计算过的相关性来说,这是一个便利类,所以我必须相信用户提供了准确的信息。
好吧,让我知道你们的想法!