-1
正如你可能知道的那样,这个程序只是在JFrame中显示一个带有“My name is Bob”的GUI。我对编程相对比较陌生,但我仍然无法弄清楚为什么runGUI方法中需要“代码”的代码。“NameGUI greeting = new NameGUI();”。在我看来,它只是实例化一个从未使用过的对象。但是,当我将该代码片段取出时,GUI不显示。我错过了什么?java中的GUI:为什么我要实例化一个对象来显示GUI?
public NameGUI() {
JFrame frame = new JFrame("Name");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel nameSpace = new JPanel();
JLabel name = new JLabel("My name is Bob");
nameSpace.add(name);
frame.setContentPane(nameSpace);
frame.pack();
frame.setVisible(true);
}
public static void runGUI() {
JFrame.setDefaultLookAndFeelDecorated(true);
NameGUI greeting = new NameGUI();
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
runGUI();
}
});
}
}
我看不到'})的圆括号。 ' –
'为什么我要实例化一个对象来显示GUI?' - 不知道你为什么这么做。没有必要像这样构造你的代码。您可以将所有代码移动到runGui()方法中。 – camickr