class InsufficientFundsException extends Exception {
private Bank excepbank; // 银行对象
private double excepAmount; // 要取的钱
InsufficientFundsException(Bank ba, double dAmount) {
excepbank = ba;
excepAmount = dAmount;
}
public String excepMessage() {
String str = "The balance is" + excepbank.balance + "\n"
+ "The withdrawal was" + excepAmount;
return str;
}
}
class Bank {
double balance;// 存款数
Bank(double balance) {
this.balance = balance;
}
public void deposite(double dAmount) {
if (dAmount > 0.0)
balance += dAmount;
}
public void withdrawal(double dAmount) throws InsufficientFundsException {
if (balance < dAmount)
throw new InsufficientFundsException(this, dAmount);
balance = balance - dAmount;
}
public void showBalance() {
System.out.println("The balance is " + (int) balance);
}
}
public class ExceptionDemo { public static void main(String[] args) {
try {
Bank ba = new Bank(50);
ba.withdrawal(100); ba.showBalance();
System.out.println("Withdrawal successful!");
} catch (InsufficientFundsException e) {
e.printStackTrace();
System.out.println(e.excepMessage());
} }}
private Bank excepbank; // 银行对象
private double excepAmount; // 要取的钱
InsufficientFundsException(Bank ba, double dAmount) {
excepbank = ba;
excepAmount = dAmount;
}
public String excepMessage() {
String str = "The balance is" + excepbank.balance + "\n"
+ "The withdrawal was" + excepAmount;
return str;
}
}
class Bank {
double balance;// 存款数
Bank(double balance) {
this.balance = balance;
}
public void deposite(double dAmount) {
if (dAmount > 0.0)
balance += dAmount;
}
public void withdrawal(double dAmount) throws InsufficientFundsException {
if (balance < dAmount)
throw new InsufficientFundsException(this, dAmount);
balance = balance - dAmount;
}
public void showBalance() {
System.out.println("The balance is " + (int) balance);
}
}
public class ExceptionDemo { public static void main(String[] args) {
try {
Bank ba = new Bank(50);
ba.withdrawal(100); ba.showBalance();
System.out.println("Withdrawal successful!");
} catch (InsufficientFundsException e) {
e.printStackTrace();
System.out.println(e.excepMessage());
} }}
解决方案 »
- 写android手机塔防游戏的话要用到游戏引擎吗
- IO编程笔记
- 请问“海”是unicode吗?用java怎么转换成中文啊?????
- 一个线程同步的问题synchronized
- 用过Weblogic的帮帮我?
- 请问哪里能下载<core java>的中文版?
- SQL中含函数,比如COUNT(*),怎样在JDBC接口中取出函数值????
- 高手帮忙,十万火急
- 请问有谁用JAVA开发过windows下客户机/服务器系统呢?用的是哪个JAVA工具呢?方便程度比VB、PB等如何?
- socket收数据时随时间逐渐丢失数据
- 怎样通过循环实例化多个组件
- 请问为何我的JUnit Test出现了NullPointerException的错误呢
或者你可以吧这个对象在外面定义,然后传进来代替this