我正在尝试在程序中使用访问器(Set / Get)方法,当我尝试在main方法中使用 Get 方法时,出现此错误:
无法对类型为Student 的非静态方法getID()
进行静态引用。
我不确定如何解决此问题。我是Java编程的初学者。
以下是有问题的特定行:
设置/获取方法:
public void setID (String ID) {this.ID = ID;}
public String getID() {return this.ID;}
错误行:
System.out.println(Student.getID());
任何建议将不胜感激!*
答案 0 :(得分:4)
尝试这样的事情...
column-count:
请注意,我已经创建了Student的一个实例,并要求该实例返回其ID。 Student.getID()要求Student类返回其ID,这不是您编写的代码,可能不是您想要的代码。
答案 1 :(得分:1)
您应该在实例上调用getID()
,而不是类本身。
这是您代码中的一个示例:
Bob.getID(); // instead of Student.getID()
为了提供更多帮助,我建议您在学习 Class / type 和 variable / instance 的概念之前,不要再盲目尝试。
答案 2 :(得分:0)
getId()
是 Student 类的非静态方法,应在对象上调用,而不是在类本身上调用。
要了解, id 实例属性将属于特定学生(例如 Bob 或 Thomas ),因此您应该致电{{1 }}或Bob.getId()
,分别赋予Bob或Thomas的 id 属性。