gpt4 book ai didi

java - 对象实例化顺序和空指针异常

转载 作者:行者123 更新时间:2023-12-01 14:49:08 25 4
gpt4 key购买 nike

我正在尝试实例化两个类,如下所示:

ball = new Ball(gc, board, player, ai, score);      
ai = new AiPaddle(gc, ball);

我的问题是我的 Ball 类不断抛出空指针异常,因为我正在传递 ai,而它尚未实例化。

颠倒这些对象的创建顺序只会使我的 AiPaddle 类抛出错误,因为它需要 ball 类。

解决此类问题的最佳方法是什么?我通过在我的球类中创建一个名为 addAi 的新方法来修复它,该方法采用 ai 来代替,所以我有这个:

ball = new Ball(gc, board, player, score);      
ai = new AiPaddle(gc, ball);
ball.addAi(ai);

但我确信有更好的方法来做到这一点。

最佳答案

更好的方法是拥有第三个“主”对象,它了解 Ball 和 AiPaddle。实例化 ball 和 ai,然后将它们传递给“master”。

关于java - 对象实例化顺序和空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15051251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com