中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java如何實現簡單銀行管理系統

發布時間:2021-09-26 18:02:13 來源:億速云 閱讀:135 作者:小新 欄目:編程語言

這篇文章主要介紹了java如何實現簡單銀行管理系統,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

具體內容如下

賬戶類

package Account; public abstract class Account {  private int id;//賬號  private String password;//密碼  private String name;//姓名  private String personId;//身份證號碼  private String email;//郵箱  private double ceiling;//貸款屬性  private static double balance;//賬戶余額    public Account() {}   public Account(int id, String password, String name, String personId,      String email, double balance,double ceiling) {    super();    this.id = id;    this.password = password;    this.name = name;    this.personId = personId;    this.email = email;    this.balance = balance;    this.ceiling = ceiling;  }  public Account(int id, String password, String name, String personId,      String email) {    super();    this.id = id;    this.password = password;    this.name = name;    this.personId = personId;    this.email = email;  }  public Account(int id, String password) {    this.id =id;    this.password = password;  }  //開戶函數  public Account openAccount() {    return null;  }  //顯示開戶成功的信息函數  public void show() {    System.out.println("賬戶ID為 : " + id + "密碼為: " + password + "姓名為: " + name + "身份證號碼為: " + personId + "郵箱為:  " + email);  }  //登入函數  public void enter() {      }  //取款方法 為抽象方法  public abstract void deposit(double money);       //存款方法  public static void withdraw(double money) {    balance = balance + money;      System.out.println("您已經存入" + money + "元,賬戶余額為" + balance );  }//  public abstract void requestLoan(double money);   public double getCeiling() {    return ceiling;  }   public void setCeiling(double ceiling) {    this.ceiling = ceiling;  }   public int getId() {    return id;  }  public void setId( int id) {    this.id = id;  }   public String getPassword() {    return password;  }   public void setPassword(String password) {    this.password = password;  }   public String getName() {    return name;  }   public void setName(String name) {    this.name = name;  }   public String getPersonId() {    return personId;  }   public void setPersonId(String personId) {    this.personId = personId;  }   public String getEmail() {    return email;  }   public void setEmail(String email) {    this.email = email;  }   public double getBalance() {    return balance;  }  public void setBalance(double balance) {    this.balance = balance;  }     }

Bank類

package Account; import java.util.Scanner; public class Bank {  int i;// 賬戶編號  private Account[] account = new Account[100];// 賬戶對象數組  private int accountNum = 0;// 賬戶數量  private int type;// 賬戶類型  private String password1;// 確認密碼  int id = 100000;//第一個開戶賬號  int j = 1;//常量控制開戶賬號每次+1  Scanner sc = new Scanner(System.in);  int insert;   public Bank() {  }   // 主界面  public void mainView() {    System.out.println("******歡迎登入銀行管理系統********");    System.out.println("******請選擇業務***************");    System.out.println("******1、創建賬戶**************");    System.out.println("******2、登入賬戶**************");  }   //功能選擇函數  public void select() {    int select = sc.nextInt();    switch(select) {    case 1 : this.openAccount();    break;    case 2 : this.enter();    break;    }    }   // 開戶函數  public Account openAccount() {    System.out.println("請輸入您的姓名");    String name = sc.next();     //    System.out.println("請輸入您的卡號");    //    int id = sc.nextInt();    System.out.println("請輸入您的密碼");    String password = sc.next();     System.out.println("請再次確認您的密碼");    String password1 = sc.next();    while (!password1.equals(password)) {      System.out.println("對不起,兩次輸入的密碼不一致,請重新輸入");      System.out.println("請重新輸入您的密碼");      password = sc.next();      System.out.println("請再次確認您的密碼");      password1 = sc.next();    }     System.out.println("請輸入您的身份證號碼");    String personId = sc.next();     System.out.println("請輸入您的郵箱");    String email = sc.next();     System.out.println("請輸入您的賬戶類型");    System.out.println("1、存儲卡            2、信用卡");    type = sc.nextInt();    switch (type) {    case 1:      account[accountNum] = new LoanSavingAccount(100000 + j, password, name,          personId, email, 0, 0); // 創建存儲卡賬戶對象,初始余額為0,默認貸款金額為0元      account[accountNum].show();//調用顯示賬戶信息函數      System.out.println("卡類型為:存儲卡");      accountNum++;      j++;      return account[accountNum];    case 2:      account[accountNum] = new LoanCreditAccount(100000 + j, password, name,          personId, email, 0, 0, 5000); // 創建信用卡賬戶對象,多一個透資屬性,初始透資金額為5000元      account[accountNum].show();//調用顯示賬戶信息函數a      System.out.println("卡類型為: 信用卡");      accountNum++;      j++;      return account[accountNum];    }    return null;   }   // System.out.println("恭喜您,創建賬號成功啦!!!" + "您的賬號名為"+ account.getId() +  // "您的賬戶類型為" + type);  // return account;   // 登入函數  public Account enter() {    System.out.println("請輸入您的銀行卡號");    int id = sc.nextInt();    System.out.println("請輸入您的密碼");    String password = sc.next();    if (accountNum == 0) {      System.out.println("未注冊賬戶,請先注冊!");      this.openAccount();      this.mainView();      this.select();    }     boolean flag = false;    for (i = 0; i < accountNum; i++) {      if (id == account[i].getId() && password.equals(account[i].getPassword())) {//判斷Id和輸入的賬戶密碼是否一致        flag = true;        break;      }    }    if (!flag) {      System.out.println("登入失敗!!!");    }    if (flag) {      System.out.println("登入成功!!!!");      do {        System.out.println("請選擇業務");        System.out.println("******1、存款*****************");        System.out.println("******2、取款*****************");        System.out.println("******3、貸款*****************");        System.out.println("******4、還款*****************");        System.out.println("******3、按任意鍵退出*************");        insert = sc.nextInt();        switch(insert) {        case 1 :             System.out.println("******請輸入存款金額*****************");          int money = sc.nextInt();          account[i].withdraw(money);                          break;         case 2:   System.out.println("******請輸入取款金額*****************");        money = sc.nextInt();        account[i].deposit(money);//調用取款方法        break;         case 3:   judge();               break;          case 4:   repay();               break;        }      } while(insert == 1 || insert == 2 || insert == 3 || insert == 4);     }      return account[i];    }   //存款方法  public void withdraw() {    System.out.println("請輸入存款金額");    int money = sc.nextInt();    account[i].withdraw(money);  }  //取款方法  public void deposit() {    System.out.println("請輸入取款金額");    int money = sc.nextInt();    account[i].deposit(200);  }   //計算銀行余額總數方法  public void Accountsum() {    double savSum = 0;    for (int i = 0; i < accountNum; i++) {      savSum += account[i].getBalance();    }  }   //判斷是LoanSavingAccount 類還是LoacCreditAccount  //貸款方法  public void judge() {    System.out.println("******請輸入貸款金額*****************");    int money = sc.nextInt();    if (account[accountNum - 1] instanceof LoanSavingAccount) {      LoanSavingAccount a = (LoanSavingAccount) account[accountNum - 1];      a.requestLoan(money);    }else {      LoanCreditAccount b = (LoanCreditAccount) account[accountNum -1 ];      b.requestLoan(money);      System.out.println("成功調用了貸款方法");    }   }   //還款方法  public void repay() {    System.out.println("******請輸入還款金額*****************");    int money = sc.nextInt();    if (account[accountNum - 1] instanceof LoanSavingAccount) {//      System.out.println("判斷過了1");      LoanSavingAccount a = (LoanSavingAccount) account[accountNum - 1];      a.payLoan(money);    }else {//      System.out.println("判斷過了2");      LoanCreditAccount b1 = (LoanCreditAccount) account[accountNum - 1];      b1.payLoan(money);    }   }  }

信用卡類

package Account;  public class CreditAccount extends Account {  //信用卡  private double overdraft;//透資屬性    public CreditAccount() {}   public CreditAccount(int id, String password, String name, String personId,String email, double balance, double ceiling, double overdraft) {    super(id,password,name, personId, email, balance, ceiling);    this.overdraft = overdraft;//多出一個透資屬性  }      //  public void withdraw(double money) {//    super.setBalance(super.getBalance() + money);//    System.out.println("你的卡號為" + super.getId() +"的卡,您已經存入" + money + "元,賬戶余額為" + super.getBalance() );//  }  public void deposit(double money) {//信用卡取款方法    if ((super.getBalance() + overdraft) >= money) {       super.setBalance(super.getBalance() - money) ;       System.out.println("您取了" + money + "錢,您的余額為" + super.getBalance());    }else System.out.println("對不起您的余額和透支額度不足!");          } //  @Override//  public void requestLoan() {//    // TODO Auto-generated method stub//    //  }   }  package Account; public interface General {  void requestLoan(double money);//貸款方法  void payLoan(double money);//還款//  void getLoan();//獲取用戶總額   }

信用卡子類

package Account; import java.util.Scanner;  public class LoanCreditAccount extends CreditAccount implements General {  Scanner sc = new Scanner(System.in);   public LoanCreditAccount(){}  public LoanCreditAccount(int id, String password, String name, String personId,String email, double balance, double ceiling,double overdraft) {    super(id, password, name, personId, email, balance, ceiling, overdraft);  }  public void requestLoan(double money) {//貸款方法    if ( 0 <= money&& money <= 10000) {//貸款上限為10000      System.out.println("貸款成功,您的貸款金額為: " + money);      System.out.println("您還能貸款的金額為: " + (10000 - money));      super.setCeiling(money);//把貸款的錢傳給貸款屬性      super.setBalance(super.getBalance() + money);//更新余額值      System.out.println("您現在的余額為: " + super.getBalance());    }else {      System.out.println("對不起您的額度不夠,貸款失敗!");    }  }  public void payLoan(double money) {//還款    //三個判斷條件:1. 還款金額小于等于貸款金額  2.還款金額小于所剩余額 3.還款金額大于0        if (super.getBalance() >= money && money <= super.getCeiling() && money >= 0) {      super.setBalance(super.getBalance() - money); //更新余額      super.setCeiling(super.getCeiling() - money);      System.out.println(" 您現在的余額為" + super.getBalance());      if (super.getCeiling() ==0) {        System.out.println("您已經全部還清!!謝謝光臨!!");      }else {                System.out.println("您已經還了" + money +"您還需要還" + super.getCeiling() );      }    }else {      System.out.println("對不起,您的賬戶余額不足或者輸入的還款額度超出范圍!");    }      }  public void getLoan() {//獲取用戶貸款總額    double savSum = 0;  }; }

package Account; import java.util.Scanner; import com_Day_7_11.SavingAccount;  //存儲卡子類public class LoanSavingAccount extends SavingAccount implements General{  Scanner sc = new Scanner(System.in);    public LoanSavingAccount(int id, String password, String name,      String personId, String email, double balance, double ceiling) {    super(id, password, name, personId, email, balance, ceiling);      }  public void requestLoan(double money) {//貸款方法    if ( 0 <= money&& money <= 10000) {//貸款上限為10000      System.out.println("貸款成功,您的貸款金額為: " + money);      System.out.println("您還能貸款的金額為: " + (10000 - money));      super.setCeiling(money);//把貸款的錢傳給貸款屬性      super.setBalance(super.getBalance() + money);//更新余額值      System.out.println("您現在的余額為: " + super.getBalance());    }else {      System.out.println("對不起您的額度不夠,貸款失敗!");    }  }  public void payLoan(double money) {//還款    //三個判斷條件:1. 還款金額小于等于貸款金額  2.還款金額小于所剩余額 3.還款金額大于0        if (super.getBalance() >= money && money <= super.getCeiling() && money >= 0) {      super.setBalance(super.getBalance() - money); //更新余額      super.setCeiling(super.getCeiling() - money);      System.out.println(" 您現在的余額為" + super.getBalance());      if (super.getCeiling() ==0) {        System.out.println("您已經全部還清!!謝謝光臨!!");      }else {                System.out.println("您已經還了" + money +"您還需要還" + super.getCeiling() );      }    }else {      System.out.println("對不起,您的賬戶余額不足或者輸入的還款額度超出范圍!");    }      } }

主界面測試函數

package Account; import java.util.Scanner;  public class Text {  public static void main(String[] args) {    Scanner sc = new Scanner(System.in);     Bank b = new Bank();    while (true) {      b.mainView();//調用界面函數      int select = sc.nextInt();      switch(select) {      case 1: b.openAccount();//創建賬戶        break;      case 2: b.enter();//登入          break;        default: System.out.println("選擇業務異常,請重新選擇");      break;      }      System.out.println("是否繼續選擇其他業務");      System.out.println("退出請按  0");      System.out.println("繼續選擇其他業務請按 1");      select = sc.nextInt();      if (select == 0) {        break;      }    }   } }

感謝你能夠認真閱讀完這篇文章,希望小編分享的“java如何實現簡單銀行管理系統”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

师宗县| 菏泽市| 闵行区| 武功县| 应用必备| 马龙县| 上蔡县| 扎兰屯市| 湾仔区| 磴口县| 当阳市| 迁西县| 衡山县| 富川| 体育| 交城县| 清丰县| 博客| 读书| 海兴县| 锡林郭勒盟| 蕲春县| 岳阳市| 石城县| 山东省| 青田县| 当涂县| 馆陶县| 砚山县| 栖霞市| 新闻| 什邡市| 龙川县| 顺昌县| 泾源县| 巴东县| 吉水县| 长宁县| 廊坊市| 绥化市| 康平县|