我需要帮助来理解此Java代码

th

我正在关注这个Swing教程,并且遇到了以下代码片段:

    EventQueue.invokeLater(new Runnable() {
        @Override
        public void run() {
            SimpleExample ex = new SimpleExample();
            ex.setVisible(true);
        }
    });

EventQueue.invokeLater参数内部发生了什么?

他们是

invokeLater需要一个类型的参数Runnable,即实现该Runnable接口的类的实例在此示例中,此方法接收实现的匿名类的实例Runnable

Runnable只有一个方法-run所以所有匿名类实例必须实现的就是该run方法。

在Java 8中,使用lambda表达式的语法更短:

EventQueue.invokeLater(
    () -> {
        SimpleExample ex = new SimpleExample();
        ex.setVisible(true);
    }
);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章