如何扩展收集器 class

How to extend Collectors class

为什么 Collectors class 在 Java 8 中是最终的?我想在我自己的 class MyCollectors 中扩展 Collectors class。在那里我将添加 Collectors class.

中不存在的其他方法

Collectors 是最终的,因为它只包含 static 个实用方法。它不能被实例化(它的构造函数是 private),因此对它进行子class是没有意义的。

您可以独立于 Collectors 创建自己的 MyCollectors class。 或者,如果您想通过 MyCollectors 访问 Collectors 方法,您可以在 MyCollectors class.[=19 中创建所有 Collectors 静态方法的包装器=]

如果您需要实现自己的收集器,这不是关于子classing Collectors 实用程序 class,而是关于创建 classes 实现 [=11] =] 界面。正如上面 Eran 的回答

You can create your own MyCollectors class independent of Collectors. Or if you want to access Collectors methods via your MyCollectors, you can create wrappers of all the Collectors static methods within your MyCollectors class.

您可以创建自己的 class,方法返回您自己的 Collector

实现