【发布时间】:2019-06-29 15:37:46
【问题描述】:
我尝试在我的程序中使用访问器 (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());
任何建议将不胜感激!*
【问题讨论】:
-
你想在
Student的实例上调用getID(),而不是Student本身 -
提示:您已经创建了两个
Student对象。当您尝试致电Student.getID()时,您认为您指的是这两个中的哪一个?为什么? -
你应该在 Student 对象上调用 .getId()。
-
您应该遵循 Java 命名约定:变量名总是以小写开头。所以
ID应该是id,Bob应该是bob和Name应该是name。 -
@Isiah deDiego main() 方法甚至在类实例化之前就被 JVM 调用,因此它被声明为静态。
标签: java