当前位置:首页 » 编程语言 » JavaCard

JavaCard

发布时间: 2024-09-15 19:46:39

java定义一个银行卡类(BankCard)以及派生类ForeignCard,LimitedCard,成员包括姓名,卡

abstract class BankCard {

protected String name;
protected String cardNo;
protected double money;

public BankCard(String name, String cardNo, double money) {
super();
this.name = name;
this.cardNo = cardNo;
this.money = money;
}

public String getName() {
return name;
}
public String getCardNo() {
return cardNo;
}
public double getMoney() {
return money;
}

public abstract void unputMoney(int someMoney);

public void putMoney(int someMoney) {
this.money += someMoney;
}
}

class ForeignCard extends BankCard {

public ForeignCard(String name, String cardNo, double money) {
super(name, cardNo, money);
}

@Override
public void unputMoney(int someMoney) {
double left = getMoney() - someMoney * 1.01;
if(left >= 0) {
super.money = left;
} else {
throw new RuntimeException("余额不足");
}
}
}

class LimitedCard extends BankCard {

public LimitedCard(String name, String cardNo, double money) {
super(name, cardNo, money);
}

@Override
public void unputMoney(int someMoney) {
if(someMoney > 1000) {
throw new RuntimeException("取款不能超过1000");
}
if(getMoney() < someMoney) {
throw new RuntimeException("余额不足");
}
super.money -= someMoney;
}
}

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:546
制作脚本网站 发布:2025-10-20 08:17:34 浏览:831
python中的init方法 发布:2025-10-20 08:17:33 浏览:535
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:716
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:639
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:953
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:209
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:67
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:760
python股票数据获取 发布:2025-10-20 07:39:44 浏览:665