我试图理解提供方法newFixedThreadPool(int)
而不是类(如NewFixedThreadPool)可以使用new
实例化的原因。
换句话说,他们为什么选择将类封装在Executors
?
答案 0 :(得分:0)
嗯,这在api中很常见,请参阅例如Collections
,Arrays
,Paths
,Files
等等。我认为它与api的设计有关,而不是其他任何事情。我认为的理由是,api不是要求你实例化新对象,配置和使用它们,而是提供“实用程序类”,它是最常见用例的工厂方法的集合。
在我看来,这种模式有一些优点: