Приведение комбинированных объектов обратно к их правильному типу - PullRequest
1 голос
/ 28 марта 2011

У меня есть комбинированный список объектов (два типа; ProductGroup и Family). Я хотел бы использовать команду, чтобы выяснить, к какому типу объектов относится выбранный элемент.

Я вышел на конечности и попробовал

if (cbFamily.getSelectedItem() instanceof ProductGroup) {
    JOptionPane.showMessageDialog(mainWindow, "You have selected a ProductGroup")
}

мне не повезло

Примечание: я новичок в Java, поэтому мне, возможно, придется запросить дополнительные разъяснения по некоторым ответам

Ответы [ 2 ]

3 голосов
/ 28 марта 2011

Ваш код должен работать нормально. Проблема будет где-то еще. Используйте отладчик или напишите "System.out.println (. CbFamily.getSelectedItem () GetClass ());" перед вашим «если», чтобы определить, какой класс возвращается из вашего списка.

0 голосов
/ 28 марта 2011

Как насчет реализации функции toString (), которая возвращает имя класса?Или используя Object.getName () .Вы также можете попробовать переопределить его и сделать свой собственный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...