InvalidLockCombinationException

InvalidLockCombinationException

我有以下代码,但我很困惑如何抛出InvalidLockCombinationException。这个
异常(不应包含任何方法)将表明尝试分配一个
密码锁失败(因此使密码无效)。如果组合无效
(如果不是所有的数字都在表盘中)那么构造函数应该抛出一个新的
InvalidLockCombinationException。通过抛出此异常,我们可以避免使用创建锁
无效的组合(在现实生活中将是有缺陷的)。创建时所有锁都是打开的,这是我到目前为止所拥有的。任何帮助将不胜感激如何使异常工作。

    public class Lock{
    public Combination correct;
    public int upperLimit;
    public boolean isOpen;

    public Lock(int aLimit, Combination aCombo) throws InvalidLockCombinationException(){
    correct = aCombo;
    upperLimit = aLimit;
    isOpen=true;
    int[] comboHolder = new int[3];
    comboHolder = aCombo.getNumbers();
        for(int i=0; i<comboHolder.length;i++){
            if(comboHolder[i]<0 || comboHolder[i]>upperLimit){
                throw InvalidLockCombinationException;


}
}
}
}

最佳答案

异常也是一个对象。您不能真正扔出一个球的想法,需要一个实际的球来扔。

 throw new InvalidLockCombinationException();


自从您说过应该将其作为基本异常后,给出了Nullary构造函数,没有额外的字段或方法。我仍然会尝试接受String消息以获取更多信息,但这超出了此答案的范围。

我建议使用实际的IDE。它会礼貌地告诉您有关其红色标记的情况。

07-24 21:10