模块 jmc.utils
程序包 com.jmc.aop

批注接口 DefaultArg


@Retention(RUNTIME) @Target(PARAMETER) public @interface DefaultArg
默认参数注解
基于Aspectj LTW,会拦截正在加载中的类进行增强
从以下版本开始:
3.0
API Note:

 // 开启默认参数特性
 DefaultArgsFeature.enable();

 // 在另一个类(尚未被加载的类)中定义默认参数方法
 class Other {
     static long add(@DefaultArg("3") Long a, @DefaultArg("4") Long b) {
         return a + b;
     }
 }

 // 调用默认参数方法,结果是7
 Assert.assertEquals(7, Other.add(null, null));
 
  • 必需元素概要

    所需元素
    修饰符和类型
    必需的元素
    说明
    默认参数的值
  • 可选元素概要

    可选元素
    修饰符和类型
    可选元素
    说明
    如果默认参数是非数字类型(不包括String)
    需要传入转换默认参数(字符串)到指定参数类型的转换类
  • 元素详细资料

    • value

      String value
      默认参数的值
      返回:
      默认参数值
    • transferClass

      Class<? extends DefaultArgTransfer> transferClass
      如果默认参数是非数字类型(不包括String)
      需要传入转换默认参数(字符串)到指定参数类型的转换类
      返回:
      转换类的Class对象
      另请参阅:
      默认值:
      com.jmc.aop.DefaultArgTransfer.class