在main方法中找不到符号

时间:2013-08-29 21:00:45

标签: java

制作了一个Tester类来测试方法如何将参数传递给参数。

以下是我编写的代码。

public class Testcalculate {

public static void main (String [] args){

 Testcalculate c = new Testcalculate();
 c.add(40, 50);

} // end main

} // end class

class calculate {

 public void add(int x, int y) {

 int a = x + y;

 System.out.print("Total is: " + a);

}

}

我得到的错误消息是:

Testcalculate.java:7: cannot find symbol
symbol : method add(int, int)
location: class Testcalculate
c.add(40,50); 

我已经使用int类型的正确值将参数传递给方法。 我只是不明白是什么导致了这个问题。我甚至尝试在第二个类的add方法声明之前放置public关键字,认为它可能超出了范围,但这没有帮助。

这两个类都放在同一个文本文件中。

4 个答案:

答案 0 :(得分:6)

没有Testcalculate#add方法。换句话说,类Testcalculate没有calculate方法,因此您收到编译器错误。可能你的意思是:

calculate c = new calculate();
c.add(40, 50);

答案 1 :(得分:1)

可能你想这样做:

public class Testcalculate {

    public static void main (String [] args){

        Testcalculate c = new Testcalculate();
        c.add(40, 50);

    } // end main

    public void add(int x, int y) {

        int a = x + y;

        System.out.print("Total is: " + a);

    }

}

答案 2 :(得分:1)

将add添加到Testcalculate

public class Testcalculate {

public static void main (String [] args){

 Testcalculate c = new Testcalculate();
 c.add(40, 50);

} // end main


 public void add(int x, int y) {

 int a = x + y;

 System.out.print("Total is: " + a);

}

} // end class

或将main更改为

public static void main (String [] args){

 calculate c = new calculate();
 c.add(40, 50);

} // end main

答案 3 :(得分:0)

您已在add课程中声明了calculate方法,但您尝试在Testcalculate的实例上调用它。要解决此问题,您应该将c设为calculate的实例:

 calculate c = new calculate();
 c.add(40, 50);

此外,您应遵循Java命名约定,并将此类命名为Calculate(使用大写的“C”),而不是calculate