我不知道这里可能出现什么问题,我正在研究一种不同的方法,但遇到了一些问题所以我试图简化它以检查错误在哪里但我结束了这个非常简单的方法我仍然有同样的错误。
当我将鼠标放在第6行的redX上时,我收到一条消息:
multiple markers at this line
-Syntax error on token "(",;expected
-Syntax error on token ")",;expected`
第7行的鼠标说:
void method cannot return a value
2 quick fixes available
change method return type to 'int'
change to 'return;'
我将public static void更改为public static int并且还更改了方法的修饰符,但每次都会出现第6行的错误。 我在这里看不出任何错误,但我认为我犯了一个只需要简单修复的错误,我会发疯吗?在
之前从未遇到过这个特殊问题答案 0 :(得分:2)
问题是您在 y
方法中声明了一个名为main
的方法。在Java中,您不能嵌套方法declerations。
您必须将其移出main
方法范围,否则,请声明一个包含y
方法的私有内部类。
简而言之:
public class gat {
public static void main(String args[]) {
...
}
int y(int a) {
return a + 5;
}
}
或者:
public class gat {
public static void main(String args[]) {
class inner {
int y (int a) {
return a + 5;
}
}
}
}
第一种方法是最常见的,但有时您最终会使用第二种方法,尤其是在处理Swing事件和其他线程方面时。