我正在尝试制作一个基本上能够允许多个用户进行帐户汇款等功能的程序。我对Java比较陌生,并且对如何创建多个帐户而又不删除前一个帐户感到困惑。到目前为止,这是我的代码。许多方法尚未完成,但是它们不会干扰其他任何内容。我现在设置的方式,当第二个人创建帐户时,第一个似乎已被删除。我检查了标记为重复的线程,但似乎无法回答我的问题。
import javax.swing.*;
class Bank implements Comparable, PasswordVerifivation {
private double bal;
private double accountNumber;
private String password;
private String name;
Bank() {
}
public Bank(double bal, int accountNumber, String password, String name) {
}
void display_details() {
System.out.println("Depositor Name :" + name);
System.out.println("Account Number : " + accountNumber);
System.out.println("Account Balance : " + bal + "\n\n\n");
}
public static void main(String[] args) {
Bank user = new Bank(0,0,"","");
boolean abort = false;
do {
String[] buttons = { "Create Account For The First Time", "Login", "Exit Bank" };
int rc = JOptionPane.showOptionDialog(null, "What would you like to do?", "Bank", JOptionPane.PLAIN_MESSAGE,
3, null, buttons, buttons[2]);
switch (rc) {
case 0:
user.setName(JOptionPane.showInputDialog("Please enter your name."));
user.setBal(Double.parseDouble(
JOptionPane.showInputDialog("Please choose how much you would like to initially deposit")));
user.setPassword(JOptionPane.showInputDialog("Please choose a secure password for your account."));
user.setAccountNumber((int)((Math.random() * 9000) + 1000));
user.display_details();
break;
case 1:
if (Integer
.parseInt(JOptionPane.showInputDialog("Enter your acccount number.\n")) ==user.getAccountNumber()) {
System.out.print("Enter Amount Of Money : ");
user.bal = Double.parseDouble(
JOptionPane.showInputDialog("Please choose how much you would like to deposit."));
System.out.println("\t Successfully Deposited. Your new balance is " + user.bal);
}
break;
case 2:
System.out.println("Thank you for using the Bank");
abort = true;
break;
}
} while (!abort);
}
public void deposit(double depositAmount) {
bal += depositAmount;
}
public boolean withdraw(double withdrawAmount) {
if (withdrawAmount > bal) {
System.out.println("Insufficient Funds!!!");
return false;
} else {
bal -= withdrawAmount;
return true;
}
}
public int getNumber() {
return (int) accountNumber;
}
public double getBalance() {
return bal;
}
@Override
public int compareTo(Object arg0) {
// TODO Auto-generated method stub
return 0;
}
public String passwordCreation() {
return JOptionPane.showInputDialog("Please choose a secure password for your account.");
}
@Override
public boolean passwordVerify(String attemptedPassword) {
return password.equals(attemptedPassword);
}
public double getBal() {
return bal;
}
public void setBal(double baL) {
bal = baL;
}
public double getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(double accountNumbe) {
accountNumber = accountNumbe;
}
public String getPassword() {
return password;
}
public void setPassword(String passwor) {
password = passwor;
}
public String getName() {
return name;
}
public void setName(String nam) {
name = nam;
}
}