如何在Java中声明Callable来执行返回void的函数?

2022-09-03 05:47:32

假设我想异步运行静态方法foo

void foo() throws Exception {...} 

由于抛出一个异常,我宁愿创建一个并用它来调用以获得.fooCallableExecutorService.submitFuture

现在我想知道如何正确地宣布这些。我应该声明它们吗?CallableFuture

Callable<Void> and Future<Void>?

答案 1

我应该声明它们和吗?Callable<Void>Future<Void>

是的。

Void类似于原语类型的包装类等。你可以说它是 的包装类,即使它不是真正的类型。IntegerLongintlongvoidvoid


答案 2

我认为你应该声明它们和.然后,您可以实现它们,只要您想要包括 和 。Callable<?>Future<?>Callable<Void>Future<Void>


推荐