【发布时间】:2014-10-30 19:01:24
【问题描述】:
我正在创建一个银行程序和 hava 类 Account(摘要)、SavingsAccount 和 Customer(等等)。当我创建一个新的savingsaccount 时,我想为每个帐户获取一个 ID。我的问题是我不知道如何使 id 独一无二。
我还缺少什么?我如何为客户和帐户使用ArrayList?还有其他建议吗?这对我来说很难,但我正在努力学习和理解。
在 Bank 类中,我创建了几个客户 c1 和 c2。然后,我为客户 c1 创建了两个帐户。
public class Bank {
public static void main(String[] args) {
ArrayList<Customer> customerList = new ArrayList<Customer>();
ArrayList<Account> accountList = new ArrayList<Account>();
Customer c1 = new Customer("John");
Customer c2 = new Customer("Sam");
SavingsAccount a1 = new SavingsAccount(c1);
SavingsAccount a2 = new SavingsAccount(c1);
customerList.add(c1);
customerList.add(c2);
accountList.add(a1);
accountList.add(a2);
}
}
在帐户类中:
public abstract class Account {
protected int balance;
protected int id;
protected double interest;
protected Customer name;
public Account() {}
public Account(Customer name) {
this.name = name;
}
public abstract void deposit(int amount);
public abstract void withdraw(int amount);
public abstract int getBalance();
public abstract void transfer(int amount, Account account);
}
在类 SavingsAccount:
public class SavingsAccount extends Account{
public SavingsAccount() {
super();
}
SavingsAccount(Customer person) {
name = person;
id = (int) Math.floor(Math.random()*101); //This won't generate a unique number for each savingsaccount
}
}
【问题讨论】:
-
如果您不将您的 uid 存储在一个表单中(如 Vaishak Suresh 的发音答案 #1),则不能保证它是唯一的 id - 这不太可能但不能保证 - 但您可以如果您只是为了练习而编写代码,请使用简单的文本文件而不是数据库(在这种情况下,UUID 也适合您……所以不要介意我的提示……