注解类型 ExtensionMethod
扩展方法使您能够“添加”方法到现有类型,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法,但它们的调用方式就好像它们是扩展类型上的实例方法一样。
完整的文档请见 @ExtensionMethod 的 project lombok 功能页面。
之前
@ExtensionMethod(java.util.Arrays.class) class Example { private void example() { long[] values = new long[] { 2, 5, 7, 9 }; values.copyOf(3).sort(); } }之后
class Example { private void example() { long[] values = new long[] { 2, 5, 7, 9 }; java.util.Arrays.sort(java.util.Arrays.copyOf(values, 3)); } }
-
必需元素摘要
必需元素 -
可选元素摘要
可选元素
-
元素详情
-
value
Class<?>[] value- 返回值
- 所有静态方法将作为扩展方法公开的类型。
-
suppressBaseMethods
boolean suppressBaseMethods如果true
,即使方法调用已经是可编译的(这是默认设置),也会使用适用的扩展方法(如果找到)。如果false
,则仅当类型本身也未定义方法调用时,才使用扩展方法。- 返回值
- 是否覆盖扩展中已存在的方法。
- 默认值
true
-