Java GUI程序不是';t从BlueJ开始

Java GUI程序不是';t从BlueJ开始,java,swing,constructor,bluej,Java,Swing,Constructor,Bluej,我试着制作我的第一个GUI程序,我是Java的高手,只是按照一个教程来启动和运行。我一行一行地复制了下面的代码,试图理解发生了什么,总的来说我是。但是,程序无法在BlueJ中运行。虚拟机永远不会启动 import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JComboBox; import javax.swing.JButton; import javax.swing.JLabel; import java

我试着制作我的第一个GUI程序,我是Java的高手,只是按照一个教程来启动和运行。我一行一行地复制了下面的代码,试图理解发生了什么,总的来说我是。但是,程序无法在BlueJ中运行。虚拟机永远不会启动

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JComboBox;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JList;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;



public class GUI{
    public void GUI(){
       JFrame guiFrame1= new JFrame();
       guiFrame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       guiFrame1.setTitle("First GUI");
       guiFrame1.setSize(300,250);
       guiFrame1.setLocationRelativeTo(null);

        String[] fruitOptions = {"Apple", "Apricot", "Banana"
                ,"Cherry", "Date", "Kiwi", "Orange", "Pear", "Strawberry"};

        //Options for the JList
        String[] vegOptions = {"Asparagus", "Beans", "Broccoli", "Cabbage"
                , "Carrot", "Celery", "Cucumber", "Leek", "Mushroom"
                , "Pepper", "Radish", "Shallot", "Spinach", "Swede"
                , "Turnip"};


       //fruits
       final JPanel comboPanel= new JPanel();
       JLabel comboLbl= new JLabel("Fruits");
       JComboBox fruits = new JComboBox(fruitOptions);
       comboPanel.add(comboLbl);
       comboPanel.add(fruits);

       //veg
       final JPanel listPanel= new JPanel();
       listPanel.setVisible(false);
       JLabel listLbl1= new JLabel("Vegetables:");
       JList vegs= new JList (vegOptions);
       vegs.setLayoutOrientation(JList.HORIZONTAL_WRAP);

       listPanel.add(listLbl1);
       listPanel.add(vegs);

       //button 
       JButton vegFruitBut = new JButton("Fruit or Veg");

       vegFruitBut.addActionListener(new ActionListener()
       {
           @Override
           public void actionPerformed(ActionEvent event)
           {
               listPanel.setVisible(!listPanel.isVisible());
               comboPanel.setVisible(!comboPanel.isVisible());
           }

        });

       guiFrame1.add(comboPanel, BorderLayout.NORTH);
       guiFrame1.add(listPanel, BorderLayout.CENTER);
       guiFrame1.add(vegFruitBut,BorderLayout.SOUTH);
       guiFrame1.setVisible(true);


        }

    public static void main(String args[]){
        GUI s= new GUI();

    }
}

方法有返回类型,构造函数没有-删除
void
关键字以便可以调用Swing代码

public GUI() {
       ^

阅读:

方法有返回类型,构造函数没有-删除
void
关键字,以便调用Swing代码

public GUI() {
       ^

阅读:

方法有返回类型,构造函数没有-删除
void
关键字,以便调用Swing代码

public GUI() {
       ^

阅读:

方法有返回类型,构造函数没有-删除
void
关键字,以便调用Swing代码

public GUI() {
       ^
阅读: