gpt4 book ai didi

java - 列表/界面问题

转载 作者:行者123 更新时间:2023-12-02 11:11:50 24 4
gpt4 key购买 nike

我无法让我的联系人列表程序工作。我有 3 个类:main()、contact()、contactlist()。

我的主要问题是我想让我的 main() 打印一个菜单并让它控制导航。我很想在 Contactlist() 中编写一个方法,但我想在 main() 中执行此任务。

我创建了一个基本的骨架代码,我确信它在很多方面都是错误的。我的列表界面有一些问题。

在 ContactList 中出现错误:List<Contact> contacts;
在 Contact.java 中,getContactBylName 方法也出现错误。

主要的()

//Main class for contact list
public class Main {
public static void main(String[] args) {

}
}

接触()
import java.util.List;
import java.util.Scanner;

//Class implemented by ContactList
public class Contact implements ContactList {

String fName;
String lName;
String email;
String streetAdd;
String zipCode;

Scanner scan = new Scanner(System.in);

//Constructor
public Contact (String fName, String lName, String email, String streetAdd, String zipCode) {

}

//implementation for adding contact
public void addContact(Contact contact) {
contacts.add(contact);
}
//implementation for printing contact list
public void printContacts(Contact contact) {

}

//implementation for getting contact by last name
public void getContactBylName(String lName) {
System.out.println("Enter a last name to search:");
lName = scan.nextLine();

if (ContactList.lName == lName) {
return Contact;
}

//implementation for getting contact by email
public void getContactByemail(String email) {
System.out.println("Enter an email to search:");
email = scan.nextLine();

if (ContactList.email == email) {
return Contact;
}
}
public void getContactByzipCode(String zipCode) {

}
}

联系人列表()
//Class implementing list Contact
import java.util.List;

public interface ContactList {

List<Contact> contacts;

contacts = new ArrayList<Contact>();

//method to add contact
void addContact(Contact contact);

//method to print contact list
void printContacts(Contact contact);

//method to get a contact by last name
void getContactBylName(String lName);

//method to get a contact by email address
void getContactByemail(String email);

//method to get all contacts in a zip code
void getContactByzipCode(String zipCode);
}

最佳答案

这就是问题:

public interface ContactList {
List<Contact> contacts;
...
}

您不能在接口(interface)中声明字段(常量除外)。接口(interface)就是 API - 由实现决定是否要将其数据存储在 List<Contact> 中。或者是其他东西。

此外, Contact不应执行 ContactList - 将“单个联系人”的概念与“联系人集合”分开。您的界面可能应该返回 Contact每个“get”方法的引用也是如此......所以它看起来像这样:
public interface ContactList {
void addContact(Contact contact);
void printContacts();
Contact getContactByLastName(String lastName);
Contact getContactByEmail(String email);
Contact getContactByZipCode(String zipCode);
}

关于java - 列表/界面问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8192933/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com