我不明白这里可能出了什么问题,我正在研究一种不同的方法,但遇到了一些问题,所以我尝试简化它以检查错误可能在哪里,但我最终采用了这个非常简单的方法,但仍然我也有同样的错误。
当我将鼠标放在第 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 行的错误。 我在这里没有看到任何问题,但我认为我犯了一个错误,只需要一个简单的修复,我疯了吗?以前从未遇到过这个特殊问题
最佳答案
问题是您在 main
方法中声明了一个名为 y
的方法。在 Java 中,不能嵌套方法声明。
您必须将其移到 main
方法范围之外,否则,声明一个私有(private)内部类来保存您的 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 事件和其他线程方面时。
关于java - 创建方法时 Eclipse 表现得很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30255726/