【发布时间】:2015-03-19 00:38:27
【问题描述】:
我有一个包含多个类的应用:
MenuActivity、MenuThread、MenuView、MenuBot、MenuBall。
在“MenuView”类中,我声明了我需要的所有 ib 对象:
this.ball = new MenuBall(this, bot1);
this.bot1 = new MenuBot1(this, ball);
this.thread = new MenuThread(this,bot1,ball);
如您所见,我还没有创建对象 bot1,但我已经将它用作对象球中的参数,这给了我错误。
感谢您尝试帮助我!
【问题讨论】:
-
循环依赖!不好的方法!
-
你想在
MenuBall的构造函数中对bot1做什么?您不能在创建对象之前使用它们 - Java 无法预测对象将来会是什么。 -
@SanPonko Bot1 应该改变自己的方向。那么 Ball 不需要知道 Bot1。但最好让碰撞检测远离实体类。
-
@vakio 但 Bot1 不应该改变自己球应该改变的方向。
-
@Tanis.7x Bot1 需要获取 Ball 的参数以检测它们是否发生碰撞。如果是这种情况,球正在改变方向
标签: java android object parameters constructor