此练习题针对刚学习类和方法,但还没有学习成员变量、封装的朋友
package Card;
import java.util.Scanner;
public class BankCard {
public double balance;
public void draw(){
System.out.print("请输入余额:");
balance = new Scanner(System.in).nextDouble();
System.out.print("请输入要取的金额:");
double draw = new Scanner(System.in).nextDouble();
if(balance == 0 || balance < draw){
System.out.println("取款失败,余额:" + balance + "元,余额不足");
}else if(balance > 0 && balance>draw){
System.out.println("取款成功,余额:"+ (balance-draw)+"元");
}else{
System.out.println("无效输入");
}
}
public void deposit(){
System.out.print("请输入要存的金额:");
double deposit = new Scanner(System.in).nextDouble();
if(deposit>0){
System.out.println("余额:"+(balance+deposit)+"元");
}else{
System.out.println("无效输入");
}
}
}
package Card;
import java.util.Scanner;
public class CredlitCard extends BankCard{
public double overdraft;//透支额度
@Override
public void draw() {
System.out.print("请输入余额:");
super.balance = new Scanner(System.in).nextDouble();
System.out.print("请输入要取的金额:");
double draw = new Scanner(System.in).nextDouble();
if(draw <= (balance+1000)){
overdraft = balance+1000-draw;
System.out.println("取款成功,余额:"+(balance-draw)+"元,您还有"+overdraft+"元的透支额度");
}else if(draw > (balance+1000)){
System.out.println("取款失败,余额:"+balance+"元,您还有1000元的透支额度");
}else{
System.out.println("无效输入");
}
}
}
package Card;
import java.util.Scanner;
public class TestBank {
public static void main(String[] args) {
System.out.print("请输入银行卡或者信用卡:");
String card = new Scanner(System.in).next();
if(card.equals("银行卡")){
BankCard card1 = new BankCard();
System.out.print("请输入存款或者取款:");
String choose1 = new Scanner(System.in).next();
switch(choose1){
case "存款":
card1.deposit();
break;
case "取款":
card1.draw();
break;
}
}else if(card.equals("信用卡")){
CredlitCard card2 = new CredlitCard();
System.out.print("请输入存款或者取款:");
String choose2 = new Scanner(System.in).next();
switch(choose2){
case "存款":
card2.deposit();
break;
case "取款":
card2.draw();
break;
}
}
}
}