gpt4 book ai didi

java - "Runnable::run"- 这是如何创建 Executor 实例的?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:02:43 25 4
gpt4 key购买 nike

我正在开发一个项目,其中使用以下行创建一个测试执行器成员变量实例:

private Executor executor = Runnable::run;

代码运行并编译,但我不明白 Runnable::run 如何创建 Executor 的实例,因为两者是不同的接口(interface)。

谁能解释一下?特别是:

  • Runnable 的实现来自哪里?
  • 如何将它分配给 Executor 实现(因为 Executor 是一个不同的接口(interface))?
  • 创建了什么样的Executor?例如单线程或池
  • 在 Java 8 之前如何编写?

谢谢。

最佳答案

Executor 是一个@FunctionalInterface:

 public interface Executor {
void execute(Runnable command);
}

你可以像这样重写它以便更好地理解它:

 Executor executor = (Runnable r) -> r.run(); // or Runnable::run

关于java - "Runnable::run"- 这是如何创建 Executor 实例的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46606805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com