Java创建一个包含注释值的final字段,以便在许多方法上重用它

时间:2015-12-07 16:15:57

标签: java annotations

Java中是否可以将注释值存储在常量字段(或类似字段)中,以便在需要的每个方法上重用它? 例如,如果我有这个带注释的方法:

@CustomAnnotations({
    @CustomAnnotation(..),
    @CustomAnnotation(..),
    @CustomAnnotation(..),
    @CustomAnnotation(..),
    ...
    @CustomAnnotation(..)
})
private static MyReturnValue doSomething(){
    ..
}

我希望在同一个类中为多个方法添加相同的注释,而不是为每个方法剪切和粘贴它,是否可以定义一个字段,如:

private static final Something annotationsConstant = {
    @CustomAnnotation(..),
    @CustomAnnotation(..),
    @CustomAnnotation(..),
    @CustomAnnotation(..),
    ...
    @CustomAnnotation(..)
}

@CustomAnnotatins(annotationsConstant)    
private static MyReturnValue doSomething(){
    ..
}

@CustomAnnotatins(annotationsConstant)    
private static MyReturnValue anotherMethod(){
    ..
}

如果是,包含注释的字段的dataType是什么? 如果没有,那么没有为每个方法重写相同注释的另一种方法吗?

1 个答案:

答案 0 :(得分:2)

听起来你想要一个注释来扩展其他注释。 遗憾的是,这在Java中是不可能的。例如请参阅http://codingtips.kanishkkunal.in/css-hamburger-menu/

然而,有一些方法可以实现类似的东西。尝试研究this question的方式。