动态扩展带有泛型的java类

时间:2015-02-15 17:07:41

标签: java generics aspectj javassist

是否可以使用aspectj或javassist扩展具有泛型类的类?例如,我有一个类:

@someAnnotation(GenerictTypeParameter.class)
public aClass{
  ...
}

所以我的想法是用@someAnnotation搜索所有类,然后用另一个类扩展它们并得到它:

public aClass extends anotherClass<GenericTypeParameter>{
  ...
}

1 个答案:

答案 0 :(得分:0)

如果您愿意使用其他代码生成库,则可以使用Byte Buddy执行此操作。有了Byte Buddy,你可以:

INSERT

您只需从注释中解析相关类型即可。如果这是您想要实现的目标,Byte Buddy还允许您重新定义现有类型。