Исключение нулевого указателя JLabel - PullRequest
0 голосов
/ 16 марта 2009

Почему я получаю исключение NullPointerException, когда я пытаюсь запустить это для метки:

JLabel player1CurrentScore = new JLabel("" + matchPlay.returnPL1GamesWon(),
                                        JLabel.CENTER);

Это потому, что я не могу соединить две строки следующим образом?

В идеале я пытаюсь установить метку как счет игрока, чтобы его можно было правильно увеличивать по мере необходимости.

Вот мой стек исключений:

java.lang.NullPointerException
at GUI.makeFrame(GUI.java:71)
at GUI.<init>(GUI.java:28)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at bluej.runtime.ExecServer$3.run(ExecServer.java:808)

Ответы [ 3 ]

3 голосов
/ 16 марта 2009

На основании информации в вопросе: ссылка matchPlay нулевая.

Обновлено: учитывая, что matchPlay не может иметь значение null, метод, вызываемый для matchPlay, должен вызывать исключение. Проверка трассировки стека для предыдущего вызова метода должна помочь точно определить проблему.

3 голосов
/ 16 марта 2009

Там нет ничего, что могло бы вызвать исключение нулевого указателя, если matchPlay не имеет значение null или matchPlay.returnPL1GamesWon () не генерирует само исключение нулевого указателя.

Обновление: исходя из того факта, что исключение исходит от GUI.makeFrame, я должен спросить, есть ли у вас графический дисплей? Это приложение командной строки, приложение Swing или апплет? Похоже, вы пытаетесь создать JLabel без графического контекста.

0 голосов
/ 16 марта 2009

мне удалось ответить,

это был порядок, в котором я назначал поля в конструкторе

прости за беспокойство

спасибо всем

...