Java - 联系人管理器程序

时间:2018-05-02 16:24:08

标签: java

目前在课堂上学习java,我无法弄清楚我对这个程序做错了什么。大多数代码都是由一个项目给出的,实际上它只是我们应该根据赋值所描述的主要方法进行编辑,但对我来说失败的部分是给定类之一。下面是代码和错误。

class Main {
    public static void main(String [] args) {
        myContactsManager myContactManager = new myContactsManager();

        Contact firstContact = new Contact("Russell", "random@gmail.com", "555-555-5555");
        addcontact(firstContact);
    }
}

class myContactsManager {
    Contact[] myfriends = new Contact[500];
    int friendsCount = 0;

    myContactsManager(){
        this.friendsCount = 0;
       this.myFriends = new Contact[500];
    }

    void addContact(Contact contact){
        myFriends[friendsCount] = contact;
        friendsCount++;
    }
    Contact searchContact(String searchName){
        for(int i=0; i<friendsCount; i++){
            if(myFriends[i].name.equals(searchName)) {
                return myFriends[i];
            }
        }
        return null;
    }

}
class Contact {
    String name;
    String email;
    String phoneNumber;

    public Contact(String name, String email, String phoneNumber){
        this.name = name;
        this.email = email;
        this.phoneNumber = phoneNumber;
    }
}

错误:(6,9)java:找不到符号   符号:方法addcontact(联系方式)   location:class Main

错误:(16,12)java:找不到符号   符号:变量myFriends

错误:(21,9)java:找不到符号   符号:变量myFriends   location:class myContactsManager

错误:(26,16)java:找不到符号   符号:变量myFriends   location:class myContactsManager

错误:(27,24)java:找不到符号   符号:变量myFriends   location:class myContactsManager

以及我收到的错误。

1 个答案:

答案 0 :(得分:2)

Java区分大小写。 myfriends必须声明为myFriends。您使用addcontact方法犯了同样的错误,该方法应为addContact。它还需要在管理器的实例上调用:

class Main {
    public static void main(String [] args) {
        myContactsManager myContactManager = new myContactsManager();

        Contact firstContact = new Contact("Russell", "random@gmail.com", "555-555-5555");
        myContactManager.addContact(firstContact);
    }
}

class myContactsManager {
    Contact[] myFriends = new Contact[500];
    //... the same as you already had
}