在这段代码中,我正在制作各种银行账户。它有一个基本的BankAccount,它有变量Name和id。它有一个有利息的储蓄账户和一个有信用额度的支票账户。这两个类都扩展到BankAccountInfo类。
在Teller类中,我有一个构造函数Teller,其名称和日期处理在Main()中设置。我有一个名为setUpAccts()的方法,其中包括我到目前为止创建的帐户,检查,储蓄和两个基本的银行帐户。
在Main()中,我希望能够让多个出纳员调用特定帐户。
例如,我希望Teller John只调用acct1,这将是支票帐户。然后我想要另一位出纳员凯特,只打电话给acct2,储蓄账户及其内容。
目前我只有一个Teller调用setUpAccts()方法中的每个帐户。
这是Teller代码。
编辑:很抱歉有一个可怕的描述,我希望新的一个让我的问题更清楚。class Teller
{
String name;
String dateProcessed;
int random;
public Teller(String n, String dP)
{
name = n;
dateProcessed = dP;
System.out.println("Teller:" + " " + name + " " + "This transaction will process:" + " " + dateProcessed);
}
public void setUpAccts()
{
CheckingAccount acct1 = new CheckingAccount("Dylan Kuchar", 11, "Checking");
//acct1.setCheckingAccount("Dylan", "11", "Checking", acct1.getOverdraft());
acct1.printCheckingAccount();
acct1.setBalance(250);
//acct1.printBalance();
acct1.withdraw(120.5);
//acct1.printBalance();
SavingsAccount acct2 = new SavingsAccount("Emily Doe", 2, "Savings");
acct2.printSavingsAccount();
acct2.setBalance(225.5);
acct2.InterestBalance();
acct2.withdraw(500);
BankAccountInfo acct3 = new BankAccountInfo();
acct3.BankAccountInfo("Dylan", 11);
acct3.printBankAccountInfo();
acct3.setBalance(150);
acct3.deposit(20);
acct3.printBalance();
BankAccountInfo acct4 = new BankAccountInfo();
acct4.BankAccountInfo("Emily", 2);
acct4.printBankAccountInfo();
acct4.setBalance(650);
acct4.withdraw(150);
acct4.printBalance();
}
public static void main(String args[])
{
Teller t = new Teller("John", "Today");
t.setUpAccts();
}
}
答案 0 :(得分:0)
嗯,简单的方法就是在初始化时简单地将出纳员作为特定类型。所以你的代码将改为:
class Teller
{
String name;
String dateProcessed;
Boolean Savings;
int random;
public Teller(String n, String dP, Boolean Savings)
{
name = n;
dateProcessed = dP;
this.Savings = Savings;
System.out.println("Teller:" + " " + name + " " + "This transaction will process:" + " " + dateProcessed);
}
然后你只需将setUpAccts类更改为仅处理一个Person。然后放置一个if else来查看出纳员是在处理储蓄还是检查。不是最好的,而是它的想法。
编辑:
您可以做的是创建一个名为Account的类,CheckingAccount和Savings Account将继承此类。然后你可以这样做:
class Teller
{
Account acct;
String name;
String dateProcessed;
int random;
public Teller(Account act, String dP)
{
acct=act;
name = acct.getname();
dateProcessed = dP;
System.out.println("Teller:" + " " + name + " " + "This transaction will process:" + " " + dateProcessed);
}
public void acctStuff()
{
if(acct instenceof checkingAccount)
{ //do checking stuff}
else { //do savings stuff}
}
让我知道如果我错过了什么或者某些事情没有意义