定义一个银行取钱大于余额的用户自定义异常,当用户取款不当时使用throw抛出该异常的代码
时间: 2024-03-23 10:41:55 浏览: 58
好的,以下是实现该异常的代码:
```java
class WithdrawException extends Exception {
public WithdrawException(String errorMessage) {
super(errorMessage);
}
}
class BankAccount {
private int balance;
public BankAccount(int balance) {
this.balance = balance;
}
public void withdraw(int amount) throws WithdrawException {
if (amount > balance) {
throw new WithdrawException("取款金额大于余额");
}
balance -= amount;
System.out.println("取款成功,余额为:" + balance);
}
}
public class Main {
public static void main(String[] args) {
BankAccount account = new BankAccount(1000);
try {
account.withdraw(2000);
} catch (WithdrawException e) {
System.out.println("取款失败:" + e.getMessage());
}
}
}
```
在上述代码中,我们定义了一个 `WithdrawException` 类,继承自 `Exception` 类,表示用户取钱大于余额的异常。在 `BankAccount` 类的 `withdraw` 方法中,当用户取款金额大于余额时,我们使用 `throw` 抛出 `WithdrawException` 异常。在 `Main` 类的 `main` 方法中,我们调用 `BankAccount` 类的 `withdraw` 方法,并使用 `try...catch` 捕获抛出的异常,打印错误信息。
阅读全文