为什么我只能在静态时使用该方法

时间:2014-04-03 00:53:28

标签: java

我在主要方法下编写了一个方法,

 public static LinkList getContents()

然后在主方法LinkList list = getContents()

它只能在我在getContents的声明中添加静态时起作用,为什么?

否则会报告错误!

2 个答案:

答案 0 :(得分:3)

必须在类的特定实例上调用非静态方法,例如anObject.getContents()

答案 1 :(得分:0)

这是Java中一个非常重要的概念!因为在静态方法(例如main)中调用或引用事物时,只能引用其他静态变量,方法和对象。

相反,您仍然可以从非静态方法中引用静态数据。

解决这个问题的方法是制作一个"对象"你的班级这开始涉及面向对象编程的核心概念之一。

制作类的对象(在main中):

ClassName - > 选择任何名称< - = new ClassName();

然后你可以像这样引用这个方法 - > 你选择的名字 .getContents();

这是一些练习代码

public class Person{

public void setName(String name){
...
}



 public static void main(String[] args){
    Person bob = new Person();
    bob.setName("pete");

}


}