kos*_*tja 2 java dependency-injection cdi jboss-weld
CDI 规范的第 5.4.1 节指出,如果声明了 ,否则有效的 bean 是不可代理的(因此无法注入)final。规范没有给出任何理由,我想不出这个决定的理由。
我试图坚持设计规则,说没有明确设计用于继承的类应该禁止它。因此,CDI 规范似乎强制执行了糟糕的设计(并使 CheckStyle 哭泣)。
为什么会这样,我们可以做些什么?
谢谢你。
因为当你为一个类创建代理时,你是从它继承的(或者实现一个接口,如果可能的话),所以如果你的类是最终的,它就不能被继承,也不能为它创建代理。
如果你想使用 CDI,你需要有一个非最终类。另一种选择是不完全使用 CDI。
| 归档时间: |
|
| 查看次数: |
1101 次 |
| 最近记录: |