java - 即使日食没有标记错误,演员如何在那里工作
问题描述
ThreadPoolExecutor threadPoolExecutor = (ThreadPoolExecutor)
Executors.newFixedThreadPool(numThreads);
当我查看 api 文档时,fixedThreadPool() 返回了一个执行器服务的实例,但是在这里我们将 fixedThreadPool() 转换为 ThreadPoolExecutor,这很奇怪,因为 ThreadPoolExecutor 实现了执行器服务,谁能解释一下这个转换是如何工作的?
解决方案
只需运行以下代码:
ExecutorService te = Executors.newFixedThreadPool(10);
System.out.println(te.getClass());
输出:
class java.util.concurrent.ThreadPoolExecutor
如您所见,返回的实例是ThreadPoolExecutor。这ExecutorService
是一个接口并ThreadPoolExecutor
实现它。
您可以从超类型转换为子类型。所以它正在工作。
推荐阅读
- python - 如何在 Databricks 上使用 Apache Spark / Python 将整数转换为日期
- node.js - 在 NodeJS 中记录缓慢的 redis 操作
- azure-devops - Azure 开发运维。查找发票
- visual-studio-code - 我如何阻止 vs 代码源代码显示我的所有桌面文件?
- css - 如何更改我的 wordpress 网站中的导航栏?
- scala - 通过 Spark 作业加载到 BigQuery 失败,并出现为 parquet 找到的多个来源的异常
- python - Top2Vec 错误 - numpy.ndarray 大小已更改,可能表示二进制不兼容。预期来自 C 标头的 88,从 PyObject 获得 80
- python - python中get_attribute和get in Selenium的区别
- python - 如何计算组合出现在 Python 中的二进制表中的次数?
- android - Tgkill 和 Abort 本机崩溃 android