将对象分配给java中的变量

时间:2013-02-05 17:37:16

标签: java object breakout

我正在进行一场突破游戏,我遇到了让球从球拍或砖块上反弹的问题。

继承我的代码,让球从砖块和桨上反弹。

private void checkForHit(){
    GObject collider = getElementAt( ballX, ballspeed);

    if(collider == paddle){
        ballspeed = -ballspeed;
    }
}

我不知道为什么它不起作用,它可能很小。

更新

当我把set if(collider.equals(paddle))

我在运行游戏时遇到java.lang.NullPointerException错误。

1 个答案:

答案 0 :(得分:1)

这是因为你试图在对象上使用==符号。比较对象时的常规语法类似于CodeChimp解释:

<objectname>.equals( <otherobject> )

您必须确保您使用的对象(如果您自己制作)具有相同的使用方法,并将正确的字段值等与其他对象进行比较。学习如何让对象协同工作是OOP的一个非常重要的部分。

您可能想看看关键字:     的instanceof 在你的时候。

此外,如果你只想比较两个不同的字段值,这两个字段都是fx整数值。您可以为这些字段值创建一个getter方法,并简单地比较这些特定值。

if ( collider.getSpecificValue() == paddle.getSpecificValue() ) { }