使用 Guice 方法注入不像 setter
Using Guice method injection not as setter
使用方法注入是一种不好的做法,而不是 setter?
假设我只需要一个变量来执行一项任务
@Inject
public void doThing(@Named(booleanA) boolean A) {
if (A) {
..
} else {
...
}
我应该经历保留实例变量的麻烦吗?
boolean A;
@Inject
public void setA(@NAmed(booleanA) boolean A) {
this.A = A;
}
public void doThing() {
...
}
是的,您应该:Guice 无法知道何时您希望完成该任务,并且它不打算自己完成工作,只是为了设置准备工作。
使用方法注入是一种不好的做法,而不是 setter?
假设我只需要一个变量来执行一项任务
@Inject
public void doThing(@Named(booleanA) boolean A) {
if (A) {
..
} else {
...
}
我应该经历保留实例变量的麻烦吗?
boolean A;
@Inject
public void setA(@NAmed(booleanA) boolean A) {
this.A = A;
}
public void doThing() {
...
}
是的,您应该:Guice 无法知道何时您希望完成该任务,并且它不打算自己完成工作,只是为了设置准备工作。