去银行存款取钱续

Bank.java

public abstract class Bank {
	private int money; //存款
	public double income;//利息
	public double year;  //年数
		public int getMoney() {
		return money;
	}
	public void setMoney(int money) {
		this.money = money;
	}
public abstract double computerIncome();//计算存款利息
public int saveMoney(int in){                   //存款
	money=money+in;
	return money;
}
public int drawMoney(int out){                    //取款
	money=money-out;
	return money;
}
}

China.java

public class China extends Bank implements Commision{

	@Override
	public double computerIncome() {
		// TODO Auto-generated method stub
		if(getMoney()<=3000){
			income=getMoney()*0.5*year;
		}
		else if(getMoney()>3000&&getMoney()<6000){
			income=getMoney()*1.5*year;
		}
		else{
			income=getMoney()*2.5*year;
		}
		return income;
	}
	public double computerComm() {
		// TODO Auto-generated method stub
		if(year>3&&year<6){
			income=computerIncome()*1.5;
		}
		else if(year>6&&year<10){
			income=computerIncome()*2.5;
		}
		else{
			if(year<3)
				income=computerIncome();
			else
			income=computerIncome()*3.5;
		}
		return income;
	}
public void draw(int out) throws moneyException{
	if(getMoney()<out){
		throw new moneyException(out);
	}
}
}

Commision.java

public interface Commision {
public abstract double computerComm();//计算提成

}

moneyException.java

public class moneyException extends Exception { //  处理取钱不能超出余额的异常。

/**
	 * 
	 */
	private static final long serialVersionUID = -7014674571268272650L;
String message;
public moneyException(int n){
	message="取款金额为"+n+"对不起,余额不足";
}
public String warnMess(){
	return message;
}
}
bankTest.java
import java.util.Scanner;
public class bankTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		China ch = new China();
		ch.setMoney(5);
		System.out.println("已有存款"+ch.getMoney()+"元");
		System.out.println("请输入存款金额:");
		Scanner sc = new Scanner(System.in);
		ch.saveMoney(sc.nextInt());
		System.out.println("请输入存款年数:");
		Scanner yea=new Scanner(System.in);
		ch.year=yea.nextDouble();
		System.out.println("现有存款:" + ch.getMoney()+"元");
		System.out.println("存款利息:"+ch.computerIncome()+"元");
		System.out.println("存款提成:"+ch.computerComm()+"元");
			System.out.println("请输入取款金额:");
			Scanner sc2 = new Scanner(System.in);
			try {
				ch.draw(sc2.nextInt());
			} 
			catch (moneyException e) {
				System.out.println(e.warnMess());
			}
	}
	}

已有存款5元
请输入存款金额:
2000
请输入存款年数:
3
现有存款:2005元
存款利息:3007.5元
存款提成:10526.25元
请输入取款金额:
5000
取款金额为5000对不起,余额不足


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值