题目:
储蓄卡SavingCard类:
/**
* 储蓄卡类
* @author xgpxg
*
*/
public class SavingCard {
private double amount=1000;//初始化余额
/**
* 存钱
* @param money 存入金额
*/
public void saveMoney(double money){
amount+=money;
System.out.println("存款成功!");
}
/**
* 取钱
* @param money 取出金额
*/
public void takeMoney(double money){
if(money>amount){
System.out.println("取款失败,余额不足!");
}
else{
amount-=money;
System.out.println("取款成功!");
}
}
/**
* 余额查询
*/
public void getBalance(){
System.out.println("您的可用余额为 "+amount+" 元!");
}
}
信用卡CreditCard类:
/**
* 信用卡类
* @author xgpxg
*
*/
public class CreditCard {
private double amount=1000;//初始金额
private double credit=-10000;//初始信誉额度
/**
* 信用卡取钱
*/
public void takeMoney(double money){
if(amount-money>0){
amount-=money;
}
else{//消耗信誉额度
if(amount-money<=credit)//额度用完
System.out.println("信誉额度不够,请及时还款!");
else{
if(amount>0)//如果还有余额
money=money-amount;//需要透支的钱
if(money>0&&money<=2000)
amount=amount-money-10;
if(money>2000&&money<=5000)
amount=amount-money-30;
if(money>5000)
amount=(double) (amount-money*0.01);
System.out.println("取款成功");
}
}
}
public void saveMoney(double money){
if(amount>=0){//没有透支,直接存款
amount+=money;
System.out.println("存款成功!");
}
else{//有透支,还款
amount+=money;
if(amount>=0){//还清欠款
credit-=100;//额度增加10
if(amount>1000){//还清欠款且余额大于1000
credit-=100;//上限再增加100
}
}
System.out.println("还款成功!您的可用信用额度为 "+credit*-1+" 元");
}
}
/**
* 余额查询
*/
public void getBalance(){
if(amount>=0)
System.out.println("您的可用余额为 "+amount+" 元!");
else
System.out.println("您的可用余额为 0 元");
}
/**
* 信用额度余额
* @return
*/
public void getCreditBlance(){
System.out.println("您的总信用额度为 "+credit*-1+"元,
"+"已经透支 "+amount*-1+" 元,
"+"还可以透支 "+(credit-amount)*-1+" 元!");
}
}
主类MainClass:
public class MianClass {
public static void main(String[] args) {
/*测试数据
SavingCard sc=new SavingCard();
sc.getBalance();//余额
sc.saveMoney(100);//存100
sc.getBalance();
sc.takeMoney(100);//取100
sc.getBalance();
sc.takeMoney(2000);//取2000
sc.getBalance();
sc.takeMoney(1000);//取1000
sc.getBalance();
*/
/*
CreditCard cc=new CreditCard();
cc.getBalance();//余额
cc.saveMoney(100);//存100
cc.getBalance();
cc.takeMoney(5000);//取5000
cc.getBalance();
cc.getCreditBlance();//查信用额度
cc.takeMoney(80000);//取80000
cc.getBalance();
cc.saveMoney(100000);//存10万
cc.getBalance();
cc.saveMoney(100);//存100
cc.getBalance();
*/
}
}
输出:
您的可用余额为 1000.0 元!
存款成功!
您的可用余额为 1100.0 元!
取款成功!
您的可用余额为 1000.0 元!
取款失败,余额不足!
您的可用余额为 1000.0 元!
取款成功!
您的可用余额为 0.0 元!
您的可用余额为 1000.0 元!
存款成功!
您的可用余额为 1100.0 元!
取款成功
您的可用余额为 0 元
您的总信用额度为 10000.0元,
已经透支 2830.0 元,
还可以透支 7170.0 元!
信誉额度不够,请及时还款!
您的可用余额为 0 元
还款成功!您的可用信用额度为 10200.0 元
您的可用余额为 97170.0 元!
存款成功!
您的可用余额为 97270.0 元!