站内搜索: 请输入搜索关键词

当前页面: JAVA 编程资料牛鼻论坛Java & J2SE 技术区→菜鸟求教 一个简单的异常测试程序

菜鸟求教 一个简单的异常测试程序

发表新主题   回复此主题

第1楼 2008-04-21 15:52 lib509 写道:

菜鸟求教 一个简单的异常测试程序

一个简单的异常测试程序 老是运行出两个错误出来~
请求高手解决 感谢!


/*5.4上机指导 模拟银行取款业务*/



//密码错误异常
class PasswordErrorException extends Exception {
public String toString(){ //覆写toString()方法
return "PasswordErrorException:密码错误!";
}
}

//取款超过限额异常
class OverTopException extends Exception{
public String toString(){ //覆写toString()方法
return "OverTopException:取款超过限额!";
}
}

//余额不足异常
class BalanceLackException extends Exception{
public String toString(){ //覆写toString()方法
return "BalanceLackException:余额不足!";
}
}

public class Bank{
private int top; //一次最高取款限额
public int balance; //余额
private static boolean exceptionSign; //异常标志,用于判断是否有异常产生

public Bank(int top , int balance){
this.top=top;
this.balance=balance;
this.exceptionSign=false; //异常初始化为假

public int getBalance () { //获取余额
return this.balance;
}

public void fetchFund(String password,int money) throws PasswordErrorException,BalanceLackException,OverTopException {
if (password.length()=0) throw new PasswordErrorException(); //引发密码异常
if (money>top) throw new OverTopException(); //引发取款额限制异常
if (money>balance) throw new BalanceLackException(); //引发余额不足异常

balance -= money;
}

public static viod main(String[] args) {
Bank bank =new Bank(2000,1000);
try{
bank.fetchFund("1",500);
bank.fetchFund("1",1000);
bank.fetchFund("1",2500);
bank.fetchFund("",100);
}

catch(PasswordErrorException e) {
exceptionSign = ture;
System.out.println(e);
}

catch(OverTopException e) {
exceptionSign = ture;
System.out.println(e);
}

catch(BalanceLackException e) {
exceptionSign = ture;
System.out.println(e);
}

finally{
if (exceptionSign) System.out.println("有错误产生,操作未完成!");
else System.out.println("操作完成!目前的余额为:"+bank.getBalance);
}

} ;
}
}

第2楼 2013-08-31 12:44 Robot :

菜鸟求教 一个简单的异常测试程序 相关


发表新主题   回复此主题