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);
}
});
}