Given an ApplicationContext containing three bean definitions of type Foo with bean ids foo1, foo2, and foo3, which three @Autowired scenarios are valid and will allow the ApplicationContext to initialize successfully? (Choose three.)
A. @Autowired public void setFoo (Foo foo) {…}
B. @Autowired @Qualifier (“foo3”) Foo foo;
C. @Autowired public void setFoo (@Qualifier (“foo1”) Foo foo) {…}
D. @Autowired private Foo foo;
E. @Autowired private Foo foo2;
F. @Autowired public void setFoo(Foo foo2) {…}