注解优于命名模式(35)

一、命名模式java

  • Junit 以前要求测试必须是 test* 打头的命名,不然不执行,但都不会出错
  • 没法保证仅仅用于相应的程序元素上
  • 没有提供将参数值和程序关联起来的好办法

注解很好的解决了命名模式的这些问题程序员

二、注解数组

  • 注解类型声明中的注解叫作元注解
  • @Retention 滞留策略
  • @Target 做用对象,下述就是仅仅使用在方法声明,不能用做类,域,或其余程序上

  • 上述注释中写道:做用于无参方法,静态方法。编译器不能帮你检查,运行起来才会报错

三、标注注解工具

  • 其中m5 方法是一个实例方法,不属于注解有效使用,但不会抛出异常

  • 注解对类的语义没有任何影响,可是能够经过工具进行特殊处理
  • 以下就是对Test 注解的特殊处理

四、抛出特殊异常时才成功测试

  • 某个扩展 异常基类Exception 的Class 对象 ,它容许注解的用户指定任何异常类型

  • 测试代码,抛出特定类型异常的测试经过
  • 注意,因为是泛型定义注解,使用时须要加上类型,这样 value()返回类型固定

  • 若是特定类型异常的类文件不存在,抛出 TypeNotPresentException 异常

五、测试能够抛出任何一种指定类型异常都获得经过.net

  • 使用Class 对象数组
  • 以前的全部ExceptionTest 注解仍然有效,并产生单元素的数组

  • 使用多元素数组,使用 { } 括起来  

  • 测试运行工具改动

六、总结3d

  • 既然有了注解,彻底没理由使用命名模式
  • 大部分程序员使用java 预约义的注解就够了
  • 使用其余工具注解,因为没有标准化,换工具时会引来不少没必要要的工做量
相关文章
相关标签/搜索