Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在主方法中找不到符号_Java - Fatal编程技术网

Java 在主方法中找不到符号

Java 在主方法中找不到符号,java,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) {

创建一个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类型的正确值将参数传递到方法中。 我只是不明白是什么导致了这个问题。我甚至在第二个类中尝试将public关键字放在add方法声明之前,认为它可能超出范围,但这没有帮助

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

没有TestCalculatedD方法。换句话说,Testcalculate类没有计算方法,因此您会收到编译器错误。也许你的意思是:

calculate c = new calculate();
c.add(40, 50);
您已经在calculate类上声明了add方法,但尝试在Testcalculate实例上调用它。要解决此问题,应将c设置为calculate的实例:


此外,您应该遵循Java命名约定,并使用大写字母“C”将此类命名为Calculate,而不是Calculate。

您可能希望这样做:

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);

    }

}

或者将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
或将主菜单更改为

public static void main (String [] args){

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

} // end main

谢谢你的精彩解释。在不久的将来不会再犯这种令人尴尬的错误了!
public static void main (String [] args){

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

} // end main