请看下面的课程(请注意,它不是单身人士):
public MyClass() {
@Inject private A a;
@Inject private B b;
}
首先会创建哪个对象a
或b
?
是否有可能确定创建对象的顺序?
答案 0 :(得分:3)
我不这么认为,我没有看到它为什么重要的原因(我也担心对象实例化的顺序可能会从部署变为部署)。保证在@PostConstruct
中注入所有对象,这是最重要的事情(据我所知)。
答案 1 :(得分:1)
实际上,你可以非常控制秩序。首先,假设它们具有正常范围(例如@RequestScoped
)。其次,让B
引用A
。您会看到A
首先实例化,然后B
。请注意,您需要通过@PostConstruct
方法进行跟踪。