Spring_05_IOC创建对象的方式

IOC创建对象的方式

   * IOC是默认使用类的无参构造创建对象的,如果在类中写了有参构造,而又没有显性得到定义无参构造方法,那么程序就会报错,初始化失败。
  
     使用无参构造哈函数创建对象的时候,当注入bean成功后,对象就已经被实例化了。

   * IOC也可以通过有参构造函数创建对象,有三种方式。

       - 第一种方式  通过有参构造函数的形式参数下标来匹配赋值  index=0 代表形参的第一个参数, index=1 代表形参的第二个参数
         <constructor-arg index="0" value="施歌"/>

       - 第二种方式  通过有参构造函数的形式参数列表中的数据类型来匹配赋值 例如:形参中有String 那么type类型就写String,有int  Type就写int
         <constructor-arg type="java.lang.String"  value="施歌"/>

       - 第三种方式  通过有参构造函数的形式参数名进行匹配赋值  

           > 只有一个参数:<constructor-arg name="name" value="施歌"/>

           > 多个参数ref:先赋值,再引用

          <bean id="name" class="java.lang.String">
             <constructor-arg value="施歌"/>
          </bean>

          <bean id="user" class="com.shi.pojo.User">
            <constructor-arg ref="name" />
            <constructor-arg value="18"/>
          </bean>


    * 再beans.xml配置文件加载的时候,容器(ApplicationContext)中管理的对象就已经初始化了。

posted @ 2021-05-09 14:25  失昼  阅读(68)  评论(0)    收藏  举报