Java交叉错误

Java交叉错误,java,awt,intersection,java-2d,Java,Awt,Intersection,Java 2d,我的DoLogic方法有这个代码。我试着在投篮和障碍物之间做一个交叉,但我真的什么都想不出来。。因为两者都是不同的对象。。我试着做了一些,但它根本没有检测到什么 for(int i=0; i<shots.length; i++) { if(shots[i] != null) { shots[i].moveShot(SHOTSPEED); if(shots[i].getXPos() > 1280) {

我的DoLogic方法有这个代码。我试着在投篮和障碍物之间做一个交叉,但我真的什么都想不出来。。因为两者都是不同的对象。。我试着做了一些,但它根本没有检测到什么

for(int i=0; i<shots.length; i++)
{
    if(shots[i] != null)
    {
        shots[i].moveShot(SHOTSPEED);
        if(shots[i].getXPos() > 1280)
        {
            shots[i] = null;
        }
    }
}
for(int i=0; i<obstacles.length; i++)
{
    if(obstacles[i] == null) 
    { 
        obstacles[i] = generateObstacle(); 
        break;
    } 
    if(obstacles[i] != null)
    {
        obstacles[i].moveObstacle(); 
        if(obstacles[i].getXPos() < 10) 
        { 
            obstacles[i] = null; 
        }
        else if(obstacles[i].intersects(Player1.character))
        {
            obstacles[i] = null;
            GameSounds.hit("/resources/8bit_bomb_explosion.wav");
            lives--;
        }
    }
}
for(int i=0;i 1280)
{
shots[i]=null;
}
}
}

对于(inti=0;i这些类实现了吗?如果没有,它们应该实现。有关详细信息,请参阅的答案


…我应该在障碍物中实现矩形,在镜头中实现椭圆形

从你对两个物体的描述来看,这似乎是合乎逻辑的

…我只是打了个字

我倾向于对障碍物使用or,而对射击使用or。与其扩展它们,不如将它们作为一个实例变量

试一试&让我们知道你的进展如何。如果你遇到困难,请发布你的最佳尝试的SSCCE。
您可能需要热链接到


..

这些类实现了吗?如果没有,它们应该实现。请参见SSCCE。我应该实现障碍物中的矩形和快照中的椭圆形?因为这就是它们所绘制的以及如何实现的?我只是键入实现形状?请说明什么不清楚,不要在运行时加载任何内容,这意味着GameSounds.hit(“/resources/8bit_bomb_explosion.wav”);,将此对象加载到局部变量,在应用程序中,我稍后会这样做,但我不能为ellipse2D执行IntersectionName。它告诉我创建一个接口,如果我尝试实现矩形到障碍物,它告诉我它不能是障碍物的上接口。因为上接口应该是一个接口