Swingアプリケーションのmainメソッドの書き方

Swingアプリケーションのmainメソッドを下記のように書いていましたが、下記の書き方は正しくない。

public static void main(String args) {
    AppFrame app = new AppFrame();
    app.setVisible(true);
}

正確には下記のように書くのが正しい。

public static void main(String args) {
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new AppFrame().setVisible(true);
        }
    });
}