私は私のプロジェクトで非常に奇妙なバグに出くわしました。私はcontext.getBean(Hello.class, "foo")
を使用してオブジェクトをインスタンス化するとき、私はHelloクラスのBeanを取り戻す、次の二つのクラス春:nullを返す最終メソッドからのフィールドへのアクセス
@Component
@Scope("prototype")
public abstract class World {
String name;
public World(String name) {
this.name = name;
}
final void print() {
System.out.println(name);
}
}
@Component
@Scope("prototype")
public class Hello extends World {
public Hello(String name) {
super(name);
}
}
を持っていました。しかし、私がhello.print()
になると、null
と表示されました。
最終変更を削除すると問題が解決しました。何が起きてる?春は最終的な方法に制限がありますか?
抽象クラスから '@ Component'と' @ Scope'アノテーションを削除するとどうなりますか? –
nope @NicoVanBelle doesnt work –
Helloのコンストラクタに渡す値は何ですか? –