使用JComboBox的Java程序中的警告
我一直在YouTube上的NewBoston学习Java,在学习了两个JComboBox教程和之后,我在程序中发现了三个警告使用JComboBox的Java程序中的警告,java,jcombobox,Java,Jcombobox,我一直在YouTube上的NewBoston学习Java,在学习了两个JComboBox教程和之后,我在程序中发现了三个警告 FirstClass.java import javax.swing.JFrame; public class FirstClass { public static void main(String args[]) { Scrabble go = new Scrabble(); go.setDefaultCloseOpera
FirstClass.java
import javax.swing.JFrame;
public class FirstClass {
public static void main(String args[]) {
Scrabble go = new Scrabble();
go.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
go.setSize(300,200);
go.setVisible(true);
}
}
Scrabble.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Scrabble extends JFrame {
private JComboBox box;
private JLabel picture;
private static String[] filename = {"Coraline_Small.jpg", "fish.jpg"};
private Icon[] pics = {new ImageIcon(getClass().getResource(filename[0])), new ImageIcon(getClass().getResource(filename[1]))};
public Scrabble() {
super("JComboBox");
setLayout(new FlowLayout());
box = new JComboBox(filename);
box.addItemListener(
new ItemListener() {
public void itemStateChanged(ItemEvent event) {
if(event.getStateChange() == ItemEvent.SELECTED);
picture.setIcon(pics[box.getSelectedIndex()]);
};
}
);
add(box);
picture = new JLabel(pics[0]);
add(picture);
}
}
第一条警告出现在Scrabble.java的第5行
public class Scrabble extends JFrame {
private JComboBox box;
box = new JComboBox(filename);
说:
可序列化类Scrabble不声明静态final
long类型的SerialVersionId字段
第二条警告出现在Scrabble.java的第7行
public class Scrabble extends JFrame {
private JComboBox box;
box = new JComboBox(filename);
说:
JComboBox是一种原始类型。对泛型类型JComboBox的引用
应>>参数化
第三个也是最后一个警告出现在Scrabble.java的第18行
public class Scrabble extends JFrame {
private JComboBox box;
box = new JComboBox(filename);
说:
这条线上有多个标记
-类型安全:构造函数JComboBox(对象[])属于原始类型JComboBox。对泛型类型JComboBox的引用应为参数化 -JComboBox是一种原始类型。对泛型类型JComboBox的引用应该参数化
此外,程序运行成功
所有的帮助都将受到感谢和提前感谢
Jeremy要理解第一条警告,请阅读有关序列化的内容。例如,见 第二个警告是关于在不指定类型的情况下声明JComboBox。要避免出现警告,请添加如下类型:
private JComboBox<String> box;
专用JComboBox;
|