【发布时间】:2016-05-07 18:58:57
【问题描述】:
我有允许我覆盖它们的刻度方法的 ui 对象,我想在这些刻度方法中调用其他方法。但是我这样做的方式是,对象还没有初始化,所以它不起作用。 这是一个例子:
//FPS
UITextRectangle fps = new UITextRectangle(
handler, handler.getWidth()-64, 32, 32, 32, Color.DARK_GRAY, Color.GRAY,
new Ticker(){
@Override
public void doTick(){
//cannot call fps
fps.setText(Integer.toString(handler.getFPS()));
}
});
我怎样才能做到这一点?感谢您提供任何和所有帮助和建议!
编辑因为我的代码错误。
【问题讨论】:
-
“它不工作”是什么意思?你得到一个编译器错误吗?例外?
-
我建议删除或关闭这个问题,因为它似乎是一个错字问题...
-
"局部变量 fps 可能没有被初始化" 因为它试图在完成初始化之前调用自己,如果你在我编辑它之前看到了代码,很抱歉。我第一次搞砸了。
-
用
final回答成功了吗? -
很抱歉将其标记为我自己提出并回答的问题的副本,但我认为这应该让您很好地了解为什么这是不可能的。
this.setText(...)(或只是setText(...))不会工作吗?
标签: java constructor