future.get()方法的返回值类型是在哪里指定的
时间: 2024-02-10 16:10:36 浏览: 80
Future执行具有返回值的线程.txt
`future.get()`方法的返回值类型是在创建`Future`对象时指定的。`Future`对象表示一个异步计算的结果,`get()`方法用于获取这个结果,其返回值类型就是异步计算的结果类型。
在创建`Future`对象时,需要指定一个`Callable`对象或`Runnable`对象作为异步计算的任务,例如:
```java
ExecutorService executor = Executors.newFixedThreadPool(1);
Future<String> future = executor.submit(new Callable<String>() {
@Override
public String call() throws Exception {
// 异步计算任务
return "Hello, World!";
}
});
```
这里创建了一个`Callable<String>`对象作为异步计算的任务,因此`Future`对象的泛型类型参数也是`String`。当调用`future.get()`方法时,它会等待异步计算完成并返回计算结果,此处返回的类型就是`String`。如果异步计算任务是`Runnable`对象,那么`Future`对象的泛型类型参数就是`Void`,`get()`方法的返回值类型就是`Void`。
阅读全文