我想知道是否可以在构造函数上使用 @Resource
注释。
我的用例是我想连接一个名为 bar
的最终字段。
public class Foo implements FooBar {
private final Bar bar;
@javax.annotation.Resource(name="myname")
public Foo(Bar bar) {
this.bar = bar;
}
}
我收到一条消息,指出此位置不允许使用 @Resource
。有没有其他方法可以连接 final 字段?
最佳答案
来自@Resource
的来源:
@Target({TYPE, FIELD, METHOD})
@Retention(RUNTIME)
public @interface Resource {
//...
}
这一行:
@Target({TYPE, FIELD, METHOD})
表示这个注解只能放在Classes、Fields和Methods上。 CONSTRUCTOR
不见了。
https://stackoverflow.com/questions/5831128/