2012-07-19 63 views
0

我經常使用JFrames,因爲他們的應用程序,他們顯然需要一個Eclipse中的JFrame警告

方法。他們還需要在main()

myJFrame g = new myJFrame(); 

在Eclipse中,我得到的變量g警告線:「本地變量g是從來不看」,但如果我省略該行,該程序將無法運行。爲什麼我需要這條線,如果g很重要,爲什麼會有警告呢?

+0

除非你確實做了什麼後用變量'g'或以某種方式引用它,你可以只用做'新myJFrame()脫身;' – 2012-07-19 18:48:48

回答

1

警告意味着你聲明一個局部變量/指針(被稱爲克這種情況下),但從來沒有真正在你的代碼使用它的任何地方。隨着警告程序應該運行良好,但你有一個額外的「指針」,從未使用過的JFrame。

如果你想從方法來訪問你的JFrame是你叫myJFrame g = new myJFrame();你應該保持這種方式。 否則new myJFrame();就足夠了。

4

回答你的問題 - 可能你調用了所有必要的方法(如setVisible(true)等)在myJFrame構造函數中運行應用程序。如果是這樣的 - 你不必g局部變量 - 你永遠不會用到它(看警告)。

第一件事main - 開始所有Java應用程序的點。 如果您在JFrame構造做所有的事情第二件事,那麼你只需要排隊

new myJFrame(); //in Java it's convention to use first letter 
       //upper-case class names -> MyJFrame 

下面是在應用程序運行的第一個窗口的簡單,標準的方式。

public final class App { 
    public static void main(final String[] args) { 
     SwingUtilities.invokeLater(new Runnable() { 
      @Override 
      public void run() { 
       MainWindow frame = new MainWindow(); 
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
       frame.setVisible(true); 
      } 
     }); 
    } 
} 

MainWindow類僅創建Swing組件等

0

如果你不打算引用初始化這個WLD足夠此對象的。

new myJFrame();