模拟银行账户存钱,取钱,当取钱的金额大于余额时就会出现异常
import java.io.*;
//自定义异常类,继承Exception类
public class InsufficientFundsException extends Exception {
private double amount;
public InsufficientFundsException(double amount){
this.amount=amount;
}
public double getAmount(){
return amount;
}
}
import java.io.*;
public class CheckingAccount {
private double balance;//余额
private int number;//卡号
public CheckingAccount(int number){
this.number=number;
}
//存钱
public void deposite(double amount){
balance+=amount;
}
//取钱
public void withdraw(double amount) throws InsufficientFundsException{
if(amount<=balance){
balance-=amount;
}
else{
double needs=amount-balance;
throw new InsufficientFundsException(needs);
}
}
//返回余额
public double getBalance(){
return balance;
}
//返回卡号
public int getNumber(){
return number;
}
}
public class BankDemo {
public static void main(String[] args){
CheckingAccount c=new CheckingAccount(101);
System.out.println("Despoiting $500...");
c.deposite(500.00);
try{
System.out.println("\nWithdrawing $100..");
c.withdraw(100.00);
System.out.println("\nWithdrawong $600...");
c.withdraw(600.00);
}catch(InsufficientFundsException e){
System.out.println("Sorry,but you are short $"+e.getAmount());
e.printStackTrace();
}
}
}