....不在公共领域;无法从外部访问包
问题描述:
我正在写一个简单的按钮,单击时会创建一个新的联系人。我知道这个错误发生是由于公共宣传与私人宣言,但我无法弄清楚发生了什么。我已经输入了接触的类,但我被卡住了。....不在公共领域;无法从外部访问包
import java.util.*;
class Contact {
private List<Contact> contacts = new LinkedList<Contact>();
private int nextId = 0;
public Contact add(Contact contact) {
contact.setId(++nextId);
contacts.add(contact);
return contact;
}
private String firstName = "";
private String lastName = "";
private String email = "";
下面是代码调用接触
import domain.*;
import javax.swing.JOptionPane;
public class MainUI extends javax.swing.JFrame {
private Account account = null;
public void setAccount(Account account) {
this.account = account;
}
Contact contact = new Contact(); // Error is here
contact.setFirstname(firstNameFld.getText());
contact.setLastname(lastNameFld.getText());
contact.setEmail(emailFld.getText());
contact.setPhone(phoneFld.getText());
boolean isValid = contact.validate();
if(!isValid) {
JOptionPane.showMessageDialog(this, "All fields are required for a Contact", "Error", JOptionPane.ERROR_MESSAGE);
return;
}
JOptionPane.showMessageDialog(this, "Your new Contact has been saved", "Saved Contact", JOptionPane.INFORMATION_MESSAGE);
firstNameFld.setText("");
lastNameFld.setText("");
emailFld.setText("");
phoneFld.setText("");
}
答
你接触类是包私有,将其改为公开或移动类同一个包。
你的'class Contact'不是'public'。 – chrylis
你应该写'public class Contact {' –