有没有办法在Java中的注释属性(比如值)中使用当前的类名?

时间:2014-09-06 05:46:03

标签: java annotations

我想要做的是使用一般功能来定义不同的值'基于特定于类的唯一标识符在相应类中使用的一个特定/多个注释的属性,其中最明显的是类名。

我正在使用NetBeans。我使用Ctrl + Space关键字检查自动填充建议。似乎没有办法做到这一点。这样做有哪些可能的瓶颈?

一些代码......

@ManagedBean
@CustomScoped(value = uniqueFunction(this.class.name()))
public class DetectionMethodCB extends CommonChildCB<DetectionMethod> implements Serializable {

}

1 个答案:

答案 0 :(得分:2)

不,这是不可能的。如果要将类指定为注释中的值,则必须使用类文字。所以功能不是一种选择。 From the spec

  

当且仅当满足下列条件之一时,元素类型T才与元素值V相称:

     

[...]

     

如果T是Class,或者是Class的调用,则V是类文字   (§15.8.2)。