Java错误:无法在具有多个方法的单个类中对非静态方法进行静态引用

时间:2014-02-13 18:23:01

标签: java

我在java中有单个类,有两个方法。一个是public static void main(String args [])。 当我在主内部调用其他方法时我得到了上述错误。

class Test {
    public static void main(String[] args) {
        method();
    }

    private void method() {
        System.out.println("hello");
    }

}

3 个答案:

答案 0 :(得分:2)

如果不清楚,首先应该遵循一些基本的java教程。 这是一个不错的开始:What is the best java tutorial site

答案 1 :(得分:1)

解决方案 - 将其他方法设为静态 - OR 通过类Test(使用 new 运算符)为其创建实例

替代1(使用静态)

 class Test {
  public static void main(String[] args) {
    method();
 }

 private static void method() {
    System.out.println("hello");
 }

}

ALTERNATIVE 2(使用类Test的实例)

class Test {
  public static void main(String[] args) {
    Test test = new Test();
    test.method();
 }

 private void method() {
    System.out.println("hello");
}

}

答案 2 :(得分:0)

创建Test的实例,因为应该从实例调用非静态方法:

new Test().method();