ge demo12; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.lang.reflect.Method; /* * 简单测试框架 * 当主方法执行后,会自动自行被检测的所有方法(加了Check注解的方法),判断方法是否有异常,记录到文件中 * */ public class Testcheck { public static void main(String[] args) { //创建计算器对象 Calculator calculator = new Calculator(); //获取字节码文件 Class cls = calculator.getClass(); //判断所有方法 Method[] methods = cls.getMethods(); int number = 0; try{ BufferedWriter br = new BufferedWriter(new FileWriter("/Users/wanggang/Desktop/java/src/demo12/4.txt")); for (Method method : methods) { //判断是否有check注解 if(method.isAnnotationPresent(Check.class)){ //有,执行 try{ method.invoke(calculator); }catch (Exception e){ //捕获异常 number++; br.write(method.getName()+"方法出异常了"); br.newLine(); br.write("异常的名字"+e.getCause().getClass().getSimpleName()); br.newLine(); br.write("异常的原因"+e.getCause().getMessage()); br.newLine(); br.write("-------------------------------------"); } } } br.write("本次一共出现"+number+"异常"); br.close(); }catch (Exception e){ e.printStackTrace(); } } }
Java 基础 注解案例 简单的测试框架
最新推荐文章于 2021-04-14 14:32:21 发布