gpt4 book ai didi

java - 为什么我的类成员无法访问我的 getter 方法?

转载 作者:行者123 更新时间:2023-12-01 10:02:37 28 4
gpt4 key购买 nike

我有这两个文件,personalinfo.java(定义personalInfo类)和testpersonalinfo.java(测试该类)。当我尝试从 testpersonalinfo.java 访问我的 getter 方法时,我收到一条错误,指出这些方法未定义。谁能告诉我为什么吗?

个人信息.java:

public class personalInfo {

private String name;
private String address;
private int age;
private long phoneNumber;

personalInfo(){
name = "Default Name";
address = "Default Address";
age = 100;
phoneNumber = 0000000000;
}

personalInfo(String nam, String add, int ag, int phone){
name = nam;
address = add;
age = ag;
phoneNumber = phone;
}

public String getName(){
return name;
}
public String getAddress(){
return address;
}
public int getAge(){
return age;
}
public long getPhoneNumber(){
return phoneNumber;
}

public void setName(String nam){
this.name = nam;
}
public void setAddress(String add){
this.address = add;
}
public void setAge(int ag){
this.age = ag;
}
public void setPhoneNumber(long phone){
this.phoneNumber = phone;
}
}

testpersonalinfo.java:

import java.util.Scanner;

public class personalInfoExample {

public static void main(String[] args){

personalInfo[] pers = new personalInfo[3];
Scanner input = new Scanner(System.in);

String inName;
String inAddress;
int inAge;
long inPhoneNumber;

for(int i=0; i<3; i++){
pers[i] = new personalInfo();
System.out.printf("Please input the name for person %s: ", i );
inName = input.nextLine();
pers[i].setName(inName);
System.out.println(pers[i].getName);
System.out.printf("Please input the address for person %s: ", i );
inAddress = input.nextLine();
pers[i].setAddress(inAddress);
System.out.println(pers[i].getAddress);
System.out.printf("Please input the age for person %d: ", i );
inAge = input.nextInt();
pers[i].setAge(inAge);
input.nextLine();
System.out.println(pers[i].getAge);
System.out.printf("Please input the phone number for person %d, without dashes included (ex. 1112223333): ", i );
inPhoneNumber = input.nextLong();
pers[i].setPhoneNumber(inPhoneNumber);
System.out.println(pers[i].getPhoneNumber);
input.nextLine();
}

input.close();

}
}

最佳答案

getter 是函数,而不是字段;因此要调用它们,您需要使用 () (例如:pers[i].getAdress()

此外,类名应该大写,但这并不重要(只是为了更容易阅读。

正如有人在评论中建议的那样,您应该使用 IDE,以防万一您不这样做。 IDE 会向您指出像上面这样的明显的小错误(包括错误和约定错误),并为您节省很长时间。如果您不知道从哪里开始,请搜索 EclipseNetbeans。 (Eclipse 是我个人的最爱)。

编辑:我刚刚看到Eran评论了您的错误的答案,因此,如果他将其作为答案发布,请接受他的第一个。

关于java - 为什么我的类成员无法访问我的 getter 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36687950/

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