据我所知,使用方法SwingUtilies.invokeLater(new Runnable())
迫使EDT执行Runnable
- 对象中定义的作业,但是人们可以想象这个?通常run()
- 对象中的Runnable
方法用于在新线程中执行Java内容,但不是在这里,因为这里Runnable
- 对象仅调用EDT?
答案 0 :(得分:3)
Runnable只是一个单一方法run()的接口。有权访问Runnable对象的任何人都可以调用此方法。线程执行此操作。 EDT这样做。执行人员这样做。你的程序可以这样做。这只是一个惯例。其他软件可以使用不同的约定,例如,ExecutorService可以调用Callable对象。
在内部,EDT有自己的run方法,它在循环中从队列中提取Runnable对象并调用它们的run()方法。