我有非常简单的源文件GuiApp1.java,我试图用cmd javac编译。 它给了我警告:
C:\Users\Thakkar\Java>javac GuiApp1.java
Note: GuiApp1.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
所以我使用cmd作为javac -Xlint GuiApp1.java来编译源文件。
它给了我6个警告 e.g。GuiApp1.java:48: warning: [rawtypes] found raw type: JComboBox
JComboBox fruits = new JComboBox(fruitOptions);
^
missing type arguments for generic class JComboBox<E>
where E is a type-variable:
E extends Object declared in class JComboBox
我该如何解决这个问题?
答案 0 :(得分:3)
从Java 7开始,许多Swing组件都使用泛型,因此旧代码会对原始类型产生警告。
对于组合框示例,如果您提供它所拥有的对象的类型,则可以消除警告,例如如果JComboBox<String> fruits = new JComboBox<>(fruitOptions);
是fruitOptions
,则应使用String[]
。如果您使用其他类型,请相应更改。