我的java程序中出现了一个非常奇怪的错误.此代码显示没有错误:
buttonPlay.addListener(new ClickListener(){
public void clicked(InputEvent event, float x, float y) {
/*public GameScreen(Create create) {
this.create = create;
}*/
}
});
Run Code Online (Sandbox Code Playgroud)
但是,如果我删除评论,请Eclipse说明有两个错误:
我应该插入一个"}"来完成"public void clicked"的方法体.
我应该删除代码的最后一个"}".
所以" public GameScreen(Create create)"会产生问题,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
}
});
Run Code Online (Sandbox Code Playgroud)
实例化匿名类.这可以.
实现该匿名类的方法(您想在@Override那里添加).还好.
直接在另一个方法中声明构造函数.你不能这样做.