非法的静态声明

时间:2016-05-26 08:15:40

标签: java swing

您好我的代码目前收到错误,这是错误'内部类Main.Test中的非法静态声明   修饰符'static'只允许在常量变量声明中'我在这里搜索过,我有点理解为什么会出现这个错误,但我无法弄明白我需要改变什么,任何帮助都将不胜感激,谢谢! - 我试图让我的其他类静态,就像我在其他一些帖子中看到的那样,但这仍然不起作用

这是我的代码:

public class Main extends JFrame {
public Main() {
    String username = System.getProperty("user.name");
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Projects Design");
    frame.setLayout(new FlowLayout());
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    String text = username;
    JTextArea textAreal = new JTextArea(text, 10, 10);
    textAreal.setPreferredSize(new Dimension(400, 400));
    textAreal.setLineWrap(true);
    textAreal.setEditable(false);
    frame.add(textAreal);
    frame.pack();
    frame.setVisible(true);
    }

   public class Test extends JFrame{
   JComboBox jc = new JComboBox();
   JPanel panel = new JPanel();
   Connection con;
   Statement st;
   ResultSet rs;
   public Test() {
       this.setSize(400, 400);
       this.setLocationRelativeTo(null);
       this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       try{
       con = DriverManager.getConnection("Removed for obvious   reasons");
       st = con.createStatement();
       String s = "SELECT Code FROM users WHERE id="12";
       rs = st.executeQuery(s);
       while(rs.next())
       {
           jc.addItem(rs.getString(1));
       }
       }catch (Exception e) {
       JOptionPane.showMessageDialog(null, "ERROR");
       }finally{
       try{
       st.close();
       rs.close();
       con.close();
       }catch(Exception e){  
      JOptionPane.showMessageDialog(null, "ERROR CLOSE");  
       }
       }
       panel.add(jc);
       this.getContentPane().add(panel);
       this.setVisible(true);

        }

    public static void main(String[] args) { 
    Main rectProg = new Main();
    new Test();
    }

1 个答案:

答案 0 :(得分:0)

啊我想通了,我把我的静态类移到了我的内部类之外,因为我在内部类中有一个静态方法!谢谢你的帮助