Исключение нулевого указателя ButtonGroup

Я создал метод, который очистит все предыдущие выборы, сделанные для моей группы кнопок, состоящей из переключателей.

    public void resetRadioButtons() {

    if (group.getSelection() != null) {
        group.clearSelection();
    }
    else {

    }

}

Группа создается здесь:

        final ButtonGroup group = new ButtonGroup();
        group.add(radioAnswer1);
        group.add(radioAnswer2);
        group.add(radioAnswer3);
        group.add(radioAnswer4);

Когда метод вызывается, он выдает исключение NullPointerException в строке:

if (group.getSelection() != null) {

Я не знаю, что я делаю неправильно. Заранее спасибо.


person Jared    schedule 23.03.2014    source источник
comment
Предоставьте полный код, чтобы изучить его. Из исключения ясно, что ссылка на группу указывает на нулевой объект.   -  person RKC    schedule 23.03.2014


Ответы (2)


Вполне возможно, что вы затеняете переменную group. Попробуйте заменить

final ButtonGroup group = new ButtonGroup();

с участием

group = new ButtonGroup();
person Reimeus    schedule 23.03.2014
comment
О, мило, это сработало: D Большое спасибо. Просто из любопытства, что означает последняя группа ButtonGroup = new ButtonGroup(); иметь в виду? - person Jared; 23.03.2014
comment
это означает, что вы создаете переменную, ссылку на которую нельзя изменить. В вашем случае это выглядит так, как будто вы делаете это в методе или конструкторе (который не устанавливает другую переменную с тем же именем на уровне класса) - person Reimeus; 23.03.2014

Если исключение действительно находится в этой строке

if (group.getSelection() != null) {

(а не в самом getSelection()),
то group там null.

Сначала убедитесь, что он инициализирован.

person peter.petrov    schedule 23.03.2014