我遇到了这个并且没有抛出错误并且在运行时工作正常但总是调用 A类实现:
public interface IA {
void foo();
}
public class A implements IA
{
void foo() {...}
}
public class B implements IA
{
void foo() {...}
}
@Service
public class FooService
{
@Autowired private IA ia;
public void foo() {
ia.foo();
}
}
有人可以帮助解释为什么会有效吗?
编辑:
配置:
@Configuration
@ComponentScan(basePackages = {...})
public class ApplicationConfig
{
...
}