У меня есть этот код:
public class Sprite {
protected float x;
protected float y;
protected Image image;
protected Rectangle boundingBox;
Sprite(float x, float y, Image image) {
this.x = x;
this.y = y;
this.image = image;
boundingBox = new Rectangle(x, y,
this.image.getWidth(), this.image.getHeight());
}
...
public Rectangle getBoundingBox() {
return boundingBox;
}
Однако, когда я вызываю эту функцию в другом классе, когда объект спрайта был определен и инициализирован:
public static boolean collides(Sprite object1, Sprite object2) {
return object1.getBoundingBox().intersects(object2.getBoundingBox());
}
Я получаю исключение нулевого указателя, указывающее на строку, содержащую это:
this.image.getWidth(), this.image.getHeight());
Почему это?