Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 强制执行IllegalArgumentException_Java_Illegalargumentexception - Fatal编程技术网

Java 强制执行IllegalArgumentException

Java 强制执行IllegalArgumentException,java,illegalargumentexception,Java,Illegalargumentexception,我过去的一个试卷问题要求我修改一个方法,使其发生IllegalArgumentException 这种方法只需要从银行账户余额中提取资金 下面是实现这一点的方法 公共作废撤销(双倍金额) { 这个。余额-=amount; } 如何修改此方法以发生此异常?我以前从未见过此异常。可以使用throw引发异常: throw new IllegalArgumentException("Amount must be positive."); 您应该自己编写该方法的其余部分。要引发异常,请使用thr

我过去的一个试卷问题要求我修改一个方法,使其发生IllegalArgumentException

这种方法只需要从银行账户余额中提取资金

下面是实现这一点的方法

公共作废撤销(双倍金额)
{
这个。余额-=amount;
}


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

可以使用
throw
引发异常:

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

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

要引发异常,请使用throw命令,然后传递异常实例(异常也是类)

像这样:

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;
}
公共作废取款(双倍金额)
{
如果(此余额<金额)
{
IllegalArgumentException iae=
新的IllegalArgumentException(“无效金额。你破产了。”);
投掷iae;
}
否则,余额-=金额;
}

下一步,阅读关于try-catch-finally块的内容。

我不是试图抛出异常,而是试图使IllegalArgumentException错误发生。如中所示,如果您有ArrayOutOfBoundsException,控制台将以红色文本显示您有此异常。