我正在为我的作业创建一个银行应用程序,我想知道是否可以从if / else语句调用另一个类?如果是的话,我哪里出错?因为在编译之前我没有错误,但在尝试运行时会出现许多错误。我想在currentAccount.java类中调用" public void currentAccountCreate。我还有一个主菜单页面。 非常感谢
import java.util.Scanner;
public class Account {
Scanner keyboard = new Scanner(System.in);
currentAccount currentAccountCreating = new currentAccount();
//savingsAccount savingsAccountCreating = new savingsAccount();
public void accountCreation(){
String createOption = "";
boolean valid = false;
while (!valid) {
System.out.println("What account would you like to create?");
System.out.println("Current or savings?");
createOption = keyboard.nextLine();
if (createOption.equalsIgnoreCase("current")) {
currentAccountCreating.currentAccountCreate();
} else {
System.out.println("Invalid account type selected. Please enter checking or savings");
}
}
}
}
这是我试图打电话
public class currentAccount extends Account {
public void currentAccountCreate() {
错误堆栈跟踪
Exception in thread "main" java.lang.StackOverflowError
at java.util.Currency.getInstance(Unknown Source)
at sun.util.locale.provider.DecimalFormatSymbolsProviderImpl.getInstance(Unknown Source) at java.text.DecimalFormatSymbols.getInstance(Unknown Source)
at assignmentmine.Account.<init>(Account.java:7)
at assignmentmine.currentAccount.<init>(currentAccount.java:5)
// Plus a load more related ones
答案 0 :(得分:0)
您无法“调用”某个类,但您可以初始化类的对象并使用其公共函数。 此外,如果您说出要拨打的课程,将会很有帮助。
例如,如果我有两个类Checking
和Savings
,我会在if / else语句中初始化它们,如下所示:
//pseudocode
if (something)
Checking obj;
else
Savings obj;
但是,如果您的问题是关于创建当前类的另一个实例,那么您需要做的就是在类本身内初始化当前类的对象。这是一个例子:
public class Checking {
Checking obj;
}
注意:强>