我觉得我以错误的方式处理这段代码。基本上我正在尝试从文本文件加载客户端信息。我麻烦的代码看起来像这样......
//load clients data from file
file = new File(clientsOutputFile);
sc = new Scanner(file);
Client client;
String givenName, familyName;
String industry, projectName;
// iterate for each line in venues file, one by one
while(sc.hasNextLine()) {
str = sc.nextLine();
// split line by tab
parts = str.split("\t");
// check if all details of client are provided
if(parts.length == 5) {
phone = Integer.parseInt(parts[0]);
givenName = parts[1];
familyName = parts[2];
industry = parts[3];
projectName = parts[4];
client = new Client(phone, givenName, familyName, industry, projectName);
// add client to client's model
clientMdl.addElement(client);
}
}
sc.close();
我在编译时收到的错误是......
Error: /Users/Desktop/Migration/BookingGUI.java:647: cannot find
symbol
symbol : constructor Client(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String)
location: class Client
非常感谢任何帮助。
答案 0 :(得分:1)
您需要添加具有参数的构造函数。 Java将提供默认值但我总是发现它不可靠。
答案 1 :(得分:1)
您需要在public
类中创建一个BookingGUI
(或者如果Client
在同一个包中的包私有)构造函数,它接受您尝试传递的所有参数。
例如:
class Client {
// declare instance variables
public Client(String phone, String givenName, String familyName,
String industry, String projectName) {
// set instance variables
}
}
答案 2 :(得分:1)
你能查找Client
类是否真的有一个有四个参数的构造函数?这必须有这样的构造函数:
public class Client {
///fields
public Client(String a, String b, String c, String d){
//class initiation
}
}
此问题的另一个原因可能是Client
类具有带private
修饰符的构造函数,因此,您无法实例化它。
答案 3 :(得分:0)
您的类应该有一个参数类型为
的构造函数class Client {
public Client(int phone, String givenName, String familyName,
String industry, String projectName) {
}
}