这可能是一个愚蠢的问题,但我一整天都在寻找答案,我无法找到它。
我正在大学学习Java课程,当我创建新的JFrame时(仅通过输入名称和klik创建创建),代码与课程中的代码看起来不一样。我得到一个主方法,在课程中他们得到一个默认的构造函数。
我得到:
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
jkksl frame = new jkksl();
frame.setVisible(true);
}
catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public jkksl() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
}
它会自动创建一个public static void main()
,但当他们在课程中做同样的事情时(只创建一个新的JFrame),他们得到的基本代码是:
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
/**
* This is the default constructor
*/
public variabelveld2() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
}
return jContentPane;
}
当只创建一个JFrame,因此不输入任何代码时,代码没有main,并且获得了super()
和initialize()
的默认构造函数。
我似乎无法找到他们获取默认构造函数的原因,我得到了一个主方法以及如何更改设置,因此我还获得了super()
和initialize()
的默认构造函数
有人可以帮忙吗?