从构造函数中调用jframe方法

时间:2013-09-17 08:01:19

标签: java swing constructor

在这种特殊情况下,从构造函数调用方法有什么问题吗?

    class GUI2
{
    JFrame jfrm;
    static Container cntr;
    GUI2(){

        jfrm=new JFrame("Raaga");
        jfrm.setSize(555,493);
        jfrm.setResizable(false);
        jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jfrm.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent we){
                System.exit(0);
            }
        });
        jfrm.setVisible(true);
    }

1 个答案:

答案 0 :(得分:3)

如果你写的话就不会有问题。当然,编写太多的业务逻辑并不是一种好的做法,IMO。

如果你仍然无法避免,在这种情况下创建一个方法并在那里做。那应该更具可读性。

GUI2(){
    intialize();    
}

在那里写逻辑。

  private void intialize(){
        jfrm=new JFrame("Raaga");
        jfrm.setSize(555,493);
        jfrm.setResizable(false);
        jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jfrm.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent we){
                System.exit(0);
            }
        });
        jfrm.setVisible(true);       
  }