【问题标题】:Can objects be called in the subclass?可以在子类中调用对象吗?
【发布时间】:2016-01-27 00:55:12
【问题描述】:

首先,关于这个程序的一些背景信息。它被设置为创建新的银行帐户并将不同对象的信息保存在对象数组中。在这个特定的代码段中,我试图从用户那里获取输入(银行帐号)以通过子类进行验证。

这是我的主程序,我试图通过子类中的方法验证银行号码。

for(int x = 0; x < bankAccountArray.length; x++){
     System.out.print("Enter bank account number: ");
          int bankNumber = number.nextInt();
     checkAcctNum(bankNumber, bankAccountArray[x]);
}

我的子类的工作方式如下:

public int checkAcctNum(int acctNum, SeveralBankAccountsSub object){
    for(int x = 0; x < 10; x++){
        if(acctNum == object.getAcct()) \\runs seperate method within subclass
            return acctNum;
    }
    return -1;
}

我编译的时候,主程序出现如下错误:

找不到交易品种 - 方法 checkAcctNum(int, EachBankACcounts Sub)

我不知道该怎么做才能纠正这个问题。我相信这是由于对象数组被发送到子类,因为我试图使用该数组中的信息来访问所有银行号码。

任何帮助将不胜感激 - 我已经坚持了两天了(我是一名高中生),如果这个程序正常运行,我会松一口气。

【问题讨论】:

  • 欢迎来到 SO。请分享更多代码。您声称该方法应该是可见的,但是粘贴的代码中没有任何建议。不要添加答案/评论,只需编辑问题。
  • 你不调用对象。你调用方法。
  • checkAcctNum() 更改为静态方法。并像SubclassName.checkAcctNum(...)一样打电话

标签: java arrays object methods


【解决方案1】:

如果这是你的主类的样子,那就是问题所在......

public class Main {
    public static void main(String[] args) {
        for(int x = 0; x < bankAccountArray.length; x++){
            System.out.print("Enter bank account number: ");
            int bankNumber = number.nextInt();
            checkAcctNum(bankNumber, bankAccountArray[x]);
        }
    }
}

checkAcctNum 在该主类中不存在。它存在于您的子类中。因此,您必须执行以下操作:

SubClass x = new SubClass()
for(int x = 0; x < bankAccountArray.length; x++){
     System.out.print("Enter bank account number: ");
          int bankNumber = number.nextInt();
     x.checkAcctNum(bankNumber, bankAccountArray[x]);
}

另外,如果 for 循环在您的静态 main 方法中,它只能调用包含您的 main 方法的类的静态方法。

【讨论】:

  • 感谢您的回复,我不想添加整个程序,因为很难找到我在说的内容,但是您给我的效果很好。
【解决方案2】:

“找不到符号”意味着它所抱怨的任何东西在您尝试使用它的地方都看不到(或者根本没有定义)。我不清楚你的两种方法在哪里,但如果它们在两个不同的类中,那可能是你的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-17
    • 2017-09-19
    • 1970-01-01
    • 1970-01-01
    • 2014-11-03
    • 2010-09-13
    • 1970-01-01
    • 2018-04-17
    相关资源
    最近更新 更多