Java注释或代码生成

时间:2018-03-29 13:35:08

标签: java annotations code-generation java-annotations

给出一个嵌套的类定义

class A {
   B b;
   public B getB() {
       return b;
   }
}

class B {
   ArrayList<C> list;
   public getListC() {
    return list;
  }
}

class C {
  D d;
  public D getD() {
    return d;
   }
}

class D {
   E e;
   public E getE() {
       return e;
    } 
}

现在让我们说我有一个A类实例,我希望通过A&#39实例访问E实例,如下所示

E someMethod(A a) {
    if (a == null
       || a.getB() == null
       || a.getB().getListC() == null
       || a.getB().getList().isEmpty()
       || a.getB().getList().get(0) == null
       || a.getB().getList().get(0).getD() == null) {
       return null;
     }
    return a.getB().getList().get(0).getD().getE();
}

现在我想知道是否有办法使用Annotation或其他工具自动生成上述代码,这样我就不必重复编写这样的代码了。我应该只做以下

E someMethod(A a) {
    @AwesomeAnnotation(a.getB().getList().get(0).getD().getE());
}

1 个答案:

答案 0 :(得分:1)

KludJe可能就是你想要的。