通俗易懂地说,java中的异常处理机制就是try-catch-finally,
try是可能出现的异常,而catch是处理那些异常,可以有多个,catch中也可以用throw抛出异常,finally是无论如何都要进行执行的代码
catch中那个东西,只有一个异常处理了,才会执行下一个异常
接下来说说throw和throws吧
其实throw是用于方法体内,用于显式地抛出异常,而throws用于方法声明上,其可能发生的异常,最终交给调用者进行处理
package com.fan.异常;
public class BankAccount {
private double balance;
public BankAccount(double balance) {
this.balance = balance;
}
public void withDraw(double amount) throws InsufficientFunctionException{
if (amount>balance){
throw new InsufficientFunctionException("发生错误, 取款额大于存款数");
}
}
public static void main(String[] args) {
BankAccount bankAccount = new BankAccount(1000);
try {
bankAccount.withDraw(1100);
} catch (InsufficientFunctionException e) {
System.out.println(e.getMessage());
}
}
}