我正在学习java。当我尝试在main方法中保留我试图调用的方法时,我遇到了很多错误。
我试图声明几个变量x,y。但是,我想在调用特定方法时调用数学运算,例如addMethod,subtractMethod等。
当我尝试在public方法中包含方法时,我收到错误。
package exampleclass;
public class MathLearning {
//declaring variables
static int x = 9;
static int y = 2;
public static void main(String[] args) {
int resu=0;
additMethod(resu);
subtMethod(resu);
multMethod(resu);
divMethod(resu);
private static void divMethod(int resu) {
resu = x+y;
System.out.println(resu);
}
private static void multMethod(int resu) {
resu = x-y;
System.out.println(resu);
}
private static void subtMethod(int resu) {
resu = x*y;
System.out.println(resu);
}
private static void additMethod(int resu) {
resu = x/y;
System.out.println(resu);
}
}
}
当我将方法保留在main方法之外时,我不会收到错误。
package exampleclass;
public class MathLearning {
//declaring variables
static int x = 9;
static int y = 2;
public static void main(String[] args) {
int resu=0;
additMethod(resu);
subtMethod(resu);
multMethod(resu);
divMethod(resu);
}
private static void divMethod(int resu) {
resu = x+y;
System.out.println(resu);
}
private static void multMethod(int resu) {
resu = x-y;
System.out.println(resu);
}
private static void subtMethod(int resu) {
resu = x*y;
System.out.println(resu);
}
private static void additMethod(int resu) {
resu = x/y;
System.out.println(resu);
}
}
答案 0 :(得分:5)
当我尝试在public方法中包含方法时,我收到错误。
您不能在Java 1 中使用嵌套方法。实际上,您的第二个片段在适当的位置具有方法;在main
之外。
1 (旁白)好吧,我猜你技术上可以,因为你可以在方法中声明类,这意味着你最终可以在另一个方法中声明一个方法:
void foo1() {
class X {
void foo2() {
...
}
}
...
}
你应该很少做那样的事情。
答案 1 :(得分:2)
在java中,你不能在其他方法中声明方法(例如,你可以在python中)。方法在类下定义,就像在第二个代码示例中一样。