Предупреждение об отслеживании: [rawtypes] нашел тип raw: JList в Netbeans (изменение типов объектов в соответствии с новыми стандартами Java 7) - PullRequest
4 голосов
/ 20 октября 2011

Я работаю над NetBeans, и у NetBeans есть автоматически сгенерированное объявление объекта для контроллеров и некоторые переменные. Я продолжал получать следующие предупреждения во время сборки. Затем я понял из моего предыдущего вопроса, что начиная с Java 7, DefaultListModel, JList, Set ... являются общими типами и должны быть предоставлены с их связанным типом. Почему Netbeans не генерировал файлы, чтобы соответствовать ожиданиям Java7 ?! И как я могу изменить код в автоматически сгенерированных разделах, чтобы соответствовать этим новым условиям?!

C:\Documents and Settings\...somefile.java:902: warning: [rawtypes] found raw type: JList
private javax.swing.JList jList_SystemDSNList;
missing type arguments for generic class JList<E>
where E is a type-variable:
E extends Object declared in class JList

Например, как я могу изменить

private javax.swing.JList jList_DataSetList;

в это,

private javax.swing.JList<E> jList_DataSetList;

Когда это поле синего цвета и защищено ??? !! Я могу изменить имя переменной, но это не позволяет мне изменить тип!

Ответы [ 2 ]

3 голосов
/ 29 января 2012

Выберите объект в конструкторе, перейдите в свойства и выберите раздел «Код».

В поле «Параметры типа» введите тип, которым вы хотите объявить свой список. Например. <E> или <String>

Если щелкнуть правой кнопкой мыши объект в конструкторе и выбрать «Настроить код», вы увидите, что объявление и создание экземпляра теперь включают параметр типа.

0 голосов
/ 20 октября 2011

Полагаю, вместо вас следует указать тип данных, который будет храниться в вашем объекте JList, я не думаю, что какая-либо IDE помешает вам изменить исходный код.

...