强制IllegalArgumentException

时间:2013-05-08 14:07:47

标签: java illegalargumentexception

我过去的一篇试卷问题要求我以一种发生IllegalArgumentException的方式修改方法。

该方法只涉及从银行账户余额中提取资金

这是执行此操作的方法。

public void withdraw( double ammount ) { this.balance -= ammount; }

如何修改此方法以使此异常发生?我以前从未见过这个例外。

2 个答案:

答案 0 :(得分:2)

throw可以抛出异常:

    throw new IllegalArgumentException("Amount must be positive.");

你应该自己编写方法的其余部分。

答案 1 :(得分:0)

要抛出异常,请使用throw命令,然后传递Exception的实例(异常也是类)。

像这样:

throw e;

e是个例外。对于Java和C#,此语法相同。

因此,如果要抛出IllegalArgumentException,首先创建一个实例,然后抛出它。

public void withdraw(double amount)
{
    if (this.balance < amount)
    {
        IllegalArgumentException iae =
            new IllegalArgumentException("Invalid amount. You're broke.");
        throw iae;
    }
    else this.balance -= amount;
}

下一步,请阅读try-catch-finally块。