我有以下代碼:NPE在構造函數和超
public class CurrentPlayer(override val game: PewGame, spriteSheet: String) : Player(game, spriteSheet)
的層次結構如下所示: CurrentPlayer - >類播放器 - >特徵MovingEntity - >特質實體。
特徵'實體'有一個字段'VAL遊戲:PewGame'。 對球員的構造是這樣的:
public open class Player(override val game: PewGame, spriteSheet: String) : MovingEntity, InputAdapter()
在播放器的構造函數,如果你可以調用它,在科特林,我有這樣的:
this.sprite = CharacterSpriteSheet(Utilities.createTextureFromFile(spriteSheet), this.game.getSpriteBatch(), 0.25f)
問題是,「this.game」爲null,因此'this.game.getSpriteBatch()'拋出一個NPE。我無法以更好的方式解釋這一點,所以任何幫助表示讚賞。更確切地說,使用調試器後:
我可以在Player類中看到game
和this
。 game
不爲空,但this.game
由於某些不可解釋的原因而爲空。
感謝您的幫助!
編輯:我忘了提及問題只存在於我實例化CurrentPlayer時,並且在實例化Player時不會發生。
可以粘貼所有的代碼,包括父類 – 2014-10-22 21:02:34