我正在尝试下面的代码,但是它给了我警告信息,但是当我执行它时运行没有错误。
import javax.swing.JFrame;
class MyFrame extends JFrame {
public MyFrame() {
setTitle("Besm Allah Ya Allah");
setSize(300,300);
setLocation(10,100);
}
public static void main(String[] args){
JFrame f = new MyFrame();
f.show();
}
}
javac -Xlint MyFrame.java
给了我:
MyFrame.java:13: warning: [deprecation] show() in Window has been deprecated
f.show();
^
MyFrame.java:3: warning: [serial] serializable class MyFrame has no definition of serialVersionUID
class MyFrame extends JFrame {
^
2 warnings
有什么问题?为什么我收到警告信息?
答案 0 :(得分:5)
请参阅Window#show
:
您应该使用Window#setVisible(true)
。
要获得第二次警告,请参阅Serializable
:
可序列化类可以显式声明自己的serialVersionUID 通过声明一个名为“serialVersionUID”的字段必须是静态的, final和long类型