去银行存款取钱续

来源:互联网 发布:ichu账号数据丢失 编辑:程序博客网 时间:2024/05/01 19:08

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{@Overridepublic double computerIncome() {// TODO Auto-generated method stubif(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 stubif(year>3&&year<6){income=computerIncome()*1.5;}else if(year>6&&year<10){income=computerIncome()*2.5;}else{if(year<3)income=computerIncome();elseincome=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 stubChina 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
原创粉丝点击