@ExtensionMethod
是 Lombok 提供的一个注解,用于向现有类型(类)中添加方法。通过 @ExtensionMethod
注解,我们可以在不修改现有类的情况下,为该类添加新的方法。
下面是一个简单的示例代码:
import lombok.experimental.ExtensionMethod;
@ExtensionMethod({StringUtils.class})
public class ExtensionMethodExample {
public static void main(String[] args) {
String str = "Hello, world!";
System.out.println(str.reverse());
}
}
class StringUtils {
public static String reverse(String str) {
return new StringBuilder(str).reverse().toString();
}
}
在上面的示例中,我们使用 @ExtensionMethod
注解为 String
类添加了一个 reverse
方法。reverse
方法实际上是定义在 StringUtils
类中的,但通过 @ExtensionMethod
注解,我们可以在 ExtensionMethodExample
类中直接调用 reverse
方法,而无需创建 StringUtils
的实例。
需要注意的是,@ExtensionMethod
注解是实验性的,可能在未来的版本中被移除或改变行为,建议在生产代码中谨慎使用。