Java 方法<;方法>;未为类型字符串定义

Java 方法<;方法>;未为类型字符串定义,java,arrays,inheritance,methods,Java,Arrays,Inheritance,Methods,好的,我有一个带有getter方法的超类,如下所示: public String getBorrowerID(){ return borrowerID; } 然后我有一个子类,其中一个新数组声明为实例变量来存储用户ID: private String [] resQueue = new String[5]; 以及一个名为'FrooderID'的变量作为参数传入的借用方法,其中我必须将数组中的第一个ID与借用ID进行比较: if( borrowerID == resQueue[0].getB

好的,我有一个带有getter方法的超类,如下所示:

public String getBorrowerID(){
return borrowerID;
}
然后我有一个子类,其中一个新数组声明为实例变量来存储用户ID:

private String [] resQueue = new String[5];
以及一个名为'FrooderID'的变量作为参数传入的借用方法,其中我必须将数组中的第一个ID与借用ID进行比较:

 if( borrowerID == resQueue[0].getBorrowerID())
 {
     super.borrow(borrowerID);
     resCount--;
但是,我在这一行中遇到一个错误“类型字符串的getFrowerId()方法未定义”:

    if( borrowerID == resQueue[0].getBorrowerID())
有什么想法吗?

getFrowerId()
是在您的一个类中定义的,而不是在
String
中定义的,因此您可以通过
String
引用来调用它

您只能通过包含它的类的实例来调用它。例如,如果包含
GetFrowerId()
的类被称为
YourClass
,则可以通过以下方式调用该方法:

YourClass var = new YourClass();
String id = var.getBorrowerID();
你是说:

if ( resQueue[0].equals(getBorrowerID()) ) {
    // ...
}

GetFrooderId()不是字符串的方法。如何使用over string?另一方面:
=
不是检查字符串是否相等的最佳方法。您希望如何
重新排队[0]。GetFrowerId()
做什么?我认为David的解决方案对我有所帮助。而且,是的,你们是对的,使用“==”并不是最好的方法。谢谢你的回复。谢谢你!