为什么SpringMVC可以实例化Abstractclass?
Why Spring MVC can instantiate Abstract class?
这可能是个愚蠢的问题。在 java 中我们不能实例化抽象 类。所以我们不能这样做:
AbstractClass abstractClass = new AbstractClass()
abstractClass.method();
但是在Spring我们可以做到:
@Autowired
AbstractClass abstractClass;
abstractClass.method();
为什么?
Spring 将在其上下文中搜索与所需类型匹配的实现。
因此,如果您有一个从 AbstractClass 扩展而来的组件(@Component、@Service、@Repository...)ConcretClass,那么这个组件将被注入。
这可能是个愚蠢的问题。在 java 中我们不能实例化抽象 类。所以我们不能这样做:
AbstractClass abstractClass = new AbstractClass()
abstractClass.method();
但是在Spring我们可以做到:
@Autowired
AbstractClass abstractClass;
abstractClass.method();
为什么?
Spring 将在其上下文中搜索与所需类型匹配的实现。 因此,如果您有一个从 AbstractClass 扩展而来的组件(@Component、@Service、@Repository...)ConcretClass,那么这个组件将被注入。