你好,我有一個超階級敵人多態性錯誤
public abstract class Enemy {
protected Texture img; // Sprite image
public void setImage(String name){
this.img = new Texture(name);
}
public Texture getImage(){
return img;
}
}
}
,現在我已經擴展類海盜敵人
package com.mygdx.game;
import com.badlogic.gdx.graphics.Texture;
public class Pirate extends Enemy{
public Pirate(){
setImage("pirate.jpg"); // ERROR!
}
}
,當我打電話setImage()方法在我的構造函數我有這個錯誤
Exception in thread "main" java.lang.NullPointerException
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:88)
at com.mygdx.game.Enemy.setImage(Enemy.java:20)
at com.mygdx.game.Pirate.<init>(Pirate.java:9)
at com.mygdx.game.desktop.DesktopLauncher.main(DesktopLauncher.java:11)
那麼它有什麼問題呢?爲什麼我得到java.lang.NullPointerException?
看起來異常來自'Texture'的構造函數,而不是來自發布的代碼。 – David 2014-09-30 15:11:55
Texture class – StackFlowed 2014-09-30 15:13:56
的共享代碼是否確定找到了您的'「pirate.jpg」? – herrlock 2014-09-30 15:15:19