[英]Swing Event Thread Java
在此代碼中,HelloWorldApp只是擴展了JFrame。 為什么我不需要將“ app”對象定義放入invokeLater方法中? 為什么“ app”必須是最終的? 謝謝
final HelloWorldApp app = new HelloWorldApp();
SwingUtilities.invokeLater( new Runnable()
{
public void run()
{
app.createAndShowGUI();
}
});
擺動組件的UI狀態的所有更改都必須在EDT(事件調度線程)內完成。 因此,只要在構造函數HelloWorldApp()
不創建UI組件或更改UI組件的狀態,就可以在主線程中完成“ app”的定義。
我認為沒有必要將類指定為final。 在最新的教程中,它不再是最終的。 參見Hello World教程
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.