まず、私のタイトルについてより具体的な言葉遣いを得ることができなかったことをお詫び申し上げます。ここに私のコードスニペットがあります:
public abstract class A {
// dependencies
private Client client;
@Inject
public A(Client client) {
this.client = client;
}
public abstract foo();
protected void bar() {
client.bar();
}
}
public class B extends A {
...
}
public class C extends A {
...
}
私の問題は次のとおりです。メソッドが でどのように実装されているかは実際には気にしませB
ん。実装のみに使用します。andのコンストラクターを介して注入し続けたくありません。私のオプションは何ですか?コンストラクターの代わりに、フィールド宣言で直接アノテーションを使用できると思います。これは良いアプローチですか?他におすすめの方法はありますか?それとも、ここでDIについて誤解していますか?C
boo
A
A
client
boo
client
B
C
@Inject
client
前もってありがとう、バルガヴァ