一.什么是推断构造
Spring通过类创建Bean时,利用类的构造方法实例化对象。如果一个类有多个构造方法,Spring会选择用某个构造方法,确定入参的Bean对象,这个过程就叫推断构造。
二.推断构造的过程
1.如果一个类只有一个构造方法,不管是无参还是有参,Spring都会调用这个构造方法;
2.如果一个类有多个构造方法,先判断是否有无参构造,没有则报错;如果有无参构造,先优先用加了@Autowired注解的有参构造,否则使用无参构造。
三.源码解析
冒得
Spring通过类创建Bean时,利用类的构造方法实例化对象。如果一个类有多个构造方法,Spring会选择用某个构造方法,确定入参的Bean对象,这个过程就叫推断构造。
1.如果一个类只有一个构造方法,不管是无参还是有参,Spring都会调用这个构造方法;
2.如果一个类有多个构造方法,先判断是否有无参构造,没有则报错;如果有无参构造,先优先用加了@Autowired注解的有参构造,否则使用无参构造。
冒得