2015-04-06 84 views
-1

我有一個具有主要方法的類。現在,我想在該類中創建JFrame類的對象,但作爲全局實體而不是主函數內部,我該如何做?當我從主內部刪除實例化代碼並將其粘貼到外部時,它給了我一些編譯錯誤。在主體外創建類的實例

public class Driver { 
    JFrame frame = new JFrame("Frame Heading"); 
    public static void main(String[] args) { 
     frame.setSize(1000,500);; 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.setVisible(true); 
    } 
} 
+1

顯示您的代碼。 Java有語法。 – 2015-04-06 01:40:16

+1

向我們顯示您粘貼的代碼。 – 2015-04-06 01:40:27

+0

完成....檢查編輯 – 2015-04-06 01:45:04

回答

0

您可以使用一個靜態變量和靜態相結合的方法:

public class YourClass { 
    private static JFrame frame = createFrame(); 

    private static JFrame createFrame() { 
     frame = new JFrame(); 
     // ... more code ... 
    } 

    public static void main(String[] args) { 
     // make use of frame 
     frame.show(); 
    } 
} 

你也可以使用一個靜態變量和靜態初始化的組合:

public class YourClass { 
    private static JFrame frame; 

    static { 
     frame = new JFrame(); 
     // ... more code ... 
    } 

    public static void main(String[] args) { 
     // make use of frame 
     frame.show(); 
    } 
} 
+0

或者我可以只添加static關鍵字到我的代碼? – 2015-04-06 01:48:48

+0

@Grendan是的,必須使用類變量 – 2015-04-06 02:00:41