1. 程式人生 > >設計一個銀行賬戶類,可以存錢、取錢、查錢、獲取開戶日期 內有測試類

設計一個銀行賬戶類,可以存錢、取錢、查錢、獲取開戶日期 內有測試類

class bank 銀行賬戶類
/*
 * 1.設計一個銀行賬戶類,
 * 其中包括:賬戶資訊:賬號、姓名、開戶時間、身份證號碼、賬戶上的金額等成員。
 * 有:存款方法、取款方法、顯示開戶時間的方法、獲得賬上的金額的方法等。
並編寫測試類。
 */
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;


public class Bank {

private String acount;//賬戶
private String name;//姓名
private String time;//時間
private String id;//身份
private double num;//金額
public String getAcount() {
return acount;
}
public void setAcount(String acount) {
this.acount = acount;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public double getNum() {
return num;
}
public void setNum(double num) {
this.num = num;
}
public Bank(String acount, String name, String time, String id, double num) {
super();
this.acount = acount;
this.name = name;
this.time = time;
this.id = id;
this.num = num;
}
public Bank() {
super();
// TODO Auto-generated constructor stub
}
@Override
public String toString() {
return "Bank [賬號是:" + acount + ", 姓名為:" + name + ", 開戶時間是:" + time + ", 身份證:" + id + ", 金額為:" + num + "]";
}
//存款方法
public void cunkuan(double num){
this.num=this.num+num;
}


//取款方法
public void qukuan(double num){
if(num>this.num){
System.out.println("餘額不足,不能取款");
}else{
this.num=this.num-num;
}
}
//顯示開戶時間的方法
public String kaiHuTime(){
//getInstance() 
        //使用預設時區和語言環境獲得一個日曆。
//getTime() 
        //返回一個表示此 Calendar 時間值(從曆元至現在的毫秒偏移量)的 Date 物件。
Date currDate=Calendar.getInstance().getTime();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
this.time=sdf.format(currDate);
return time;
}
//獲得賬上金額的方法
public double GetAcountNum(){
return this.num;
}


}
class Test
import java.util.Scanner;
public class Test{
public static void main(String[] args) {
Bank bank=new Bank();
bank.setAcount("ycinfo");
bank.setId("411411199702038796");
bank.setName("小紅");
bank.setNum(10000);
bank.toString();
System.out.println(bank.GetAcountNum());
System.out.println(bank.toString());
System.out.println("*********建行歡迎你!!!**********");
Scanner sc=new Scanner(System.in);

System.out.println("請輸入你的賬戶號");
String acount=sc.nextLine();
System.out.println("請輸入你的密碼");
String pwd=sc.nextLine();
if(pwd.equals("123456")&& acount.equals(bank.getAcount())){
while(true){
System.out.println("當前你的賬戶金額為:"+bank.getNum()+"\n請輸入以下操作:");
System.out.println("1:存款");
System.out.println("2:取款");
System.out.println("3:顯示開戶的時間");
System.out.println("4:獲取賬號的金額");
System.out.println("5:退出當前賬戶");
     //next() 
    // 查詢並返回來自此掃描器的下一個完整標記。
Scanner sc2=new Scanner(System.in);//同一個變數sc之間可能會有影響 可以重新new 一個
String option=sc2.nextLine();//************************88

switch(option){
case "1" :
System.out.println("請輸入你要存的錢");
double num=sc2.nextDouble();
bank.cunkuan(num);
System.out.println("當前金額為"+bank.getNum());
break;
case "2":
System.out.println("請輸入你要取的錢");
double num1=sc2.nextDouble();
bank.qukuan(num1);
//if(num1>bank.getNum()){
//System.out.println("餘額不足,不能取款! 您當前可用餘額為:"+bank.getNum());
//}else{
//System.out.println("當前金額為"+(bank.getNum()-num1));
//}
System.out.println("當前餘額為"+bank.getNum());
break;
case "3":
System.out.println("開戶時間為:");
System.out.println(bank.kaiHuTime());
break;

case "4":
System.out.println("當前賬戶金額為:"+bank.getNum());
break;

case "5":
System.out.println("退出系統");
System.exit(0);
break;
default : System.out.println("對不起,您的輸入有誤");
break;
}

}
}else{
System.out.println("密碼或賬戶不正確,請重新輸入");

}

}
}