是否有可能设计类似的东西:
@Retention(RetentionPolicy.SOURCE)
@Target({ElementType.TYPE})
public @interface ParallelBlock {
}
所以结果可能是:
public void method(){
//some code
@ParallelBlock {
//some more code
}
}
还是唯一可能的事情是像预处理?
答案 0 :(得分:0)
您在代码中使用的ElementType
枚举对此做了澄清
ANNOTATION_TYPE Annotation type declaration
CONSTRUCTOR Constructor declaration
FIELD Field declaration (includes enum constants)
LOCAL_VARIABLE Local variable declaration
METHOD Method declaration
MODULE Module declaration.
PACKAGE Package declaration
PARAMETER Formal parameter declaration
TYPE Class, interface (including annotation type), or enum declaration
TYPE_PARAMETER Type parameter declaration
TYPE_USE Use of a type
并且没有Target
是与此相关的代码块。
为此目的,一种更干净的方法是将方法中的代码块提取出来,然后使用类型METHOD
对该方法进行注释。