在java中出现了一个非常奇怪的语法错误
我的java程序中出现了一个非常奇怪的错误。 此代码未显示任何错误:在java中出现了一个非常奇怪的语法错误,java,syntax,Java,Syntax,我的java程序中出现了一个非常奇怪的错误。 此代码未显示任何错误: buttonPlay.addListener(new ClickListener(){ public void clicked(InputEvent event, float x, float y) { /*public GameScreen(Create create) { this.create = create;
buttonPlay.addListener(new ClickListener(){
public void clicked(InputEvent event, float x, float y) {
/*public GameScreen(Create create) {
this.create = create;
}*/
}
});
但是如果我删除这些注释,Eclipse会声明有两个错误:
我应该插入一个}来完成public void的方法体
点击
我应该删除代码的最后一个}
因此,公共游戏ScreenCreate产生了一个问题,Eclipse突然不再知道块的开始和结束
对此我真的没有任何解释,我很乐意给出每一个答案。在注释掉的代码未注释的情况下,您正试图在方法中直接声明构造函数。在Java中不能这样做
// You can't do this
buttonPlay.addListener(new ClickListener(){ // 1
public void clicked(InputEvent event, float x, float y) { // 2
public GameScreen(Create create) { // 3
this.create = create; // 3
} // 3
}
});
实例化匿名类。这很好
实现一个匿名类的方法,你想在那里添加一个@Override。也很好
直接在另一个方法中声明构造函数。你不能那样做
公共空间已单击。。。是一个方法,在其中,您试图创建一个构造函数,至少这是注释代码的内容
构造函数是类特定的块,不能嵌套在方法中。这就是编译失败的原因。请在删除注释区域后共享代码好吗?您正在尝试在方法体中声明构造函数。惊喜到底在哪里?是的,我把自己的脸捂得很紧,所以我再也不会尝试这样做了,希望如此。谢谢你的回答,帮了我很大的忙:。