Java中详述构造方法与setter方法

1、基本数据类型和String类型

基本数据类型和String类型,使用value标签属性进行调用
application.xml文件中代码展示:

<!--基本数据类型和String类型-->
    <bean class="com.jd.vo.Student" id="student" lazy-init="true">
        <constructor-arg index="0" value="12"></constructor-arg>
        <constructor-arg name="name" value="Sam"></constructor-arg>
    </bean>

Student类中的有参构造方法代码展示:

 public Student(int age,String name){
        System.out.println("Student,"+age+","+name);
    }

结果显示为:
在这里插入图片描述

2、类类型

类类型数据,使用ref标签属性进行调用

application.xml文件中代码展示:

<bean class="com.jd.vo.Student">
    <constructor-arg ref="date"></constructor-arg>
</bean>

Student类中的有参构造方法代码展示:

public Student(Date date){
        System.out.println("Student,"+date);
    }

结果显示为:
在这里插入图片描述

3、List集合类型

List集合类型,使用list标签属性进行调用

application.xml文件中代码展示:

<bean id="str" class="java.lang.String">
    <constructor-arg value="QiQi"></constructor-arg>
</bean>

<bean class="com.jd.vo.Student">
    <constructor-arg>
        <list>
            <value>王佳琦</value>
            <value>WangJiaqi</value>
            <bean class="java.lang.String">
                <constructor-arg value="957"></constructor-arg>
            </bean>
            <ref bean="str"></ref>
        </list>
    </constructor-arg>
</bean>

Student类中代码展示:

//List类型
    public Student(List<String> names){
        for (String name:names) {
            System.out.println(name);
        }
    }

结果显示为:
在这里插入图片描述

4、Array集合类型

Array类型 使用array类型标签

application.xml文件代码展示:

<bean id="score" class="java.lang.Integer">
    <constructor-arg value="110"></constructor-arg>
</bean>

<bean class="com.jd.vo.Student">
    <constructor-arg>
        <array>
            <value>100</value>
            <bean class="java.lang.Integer">
                <constructor-arg value="120"></constructor-arg>
            </bean>
            <ref bean="score"></ref>
        </array>
    </constructor-arg>
</bean>

Student类中代码展示:

//Array
    public Student(int [] scores){
        for (int score : scores){
            System.out.println(score);
        }
    }

结果显示为:
在这里插入图片描述

5、Set集合类型

Set集合,使用set标签属性
application.xml文件代码展示:

<bean id="mobile" class="java.lang.String">
    <constructor-arg value="13653834555"></constructor-arg>
</bean>

<bean class="com.jd.vo.Student">
    <constructor-arg>
        <set>
            <value>18903821678</value>
            <bean class="java.lang.String">
                <constructor-arg value="13783459555"></constructor-arg>
            </bean>
            <ref bean="mobile"></ref>
        </set>
    </constructor-arg>
</bean>

Student类中代码展示:

//Set
    public Student(Set<String> mobiles){
        for (String mobile:mobiles){
            System.out.println(mobile);
        }
    }

结果显示为:
在这里插入图片描述

6、Map集合类型

Map集合 使用map属性标签

application.xml文件代码展示:

<bean id="key" class="java.lang.String">
    <constructor-arg value="SUSAN"></constructor-arg>
</bean>

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

<bean class="com.jd.vo.Student">
    <constructor-arg>
        <map>
            <entry key="Jim" value="12846543796"></entry>
            <entry key-ref="key" value-ref="value"></entry>
        </map>
    </constructor-arg>
</bean>

Student类中代码展示:

//Map
    public Student(Map<String ,String> map){
        Set<String> set = map.keySet();
        for (String key: set){
            System.out.println(key+","+map.get(key));
        }
    }

结果显示为:
在这里插入图片描述

7、Properties类型

Properties 使用props属性标签
application.xlm文件代码展示:

<bean class="com.jd.vo.Student">
    <constructor-arg>
        <props>
            <prop key="name">Jim</prop>
            <prop key="mobile">165</prop>
        </props>
    </constructor-arg>
</bean>

Student类中代码展示:

//Properties
    public Student(Properties props){
        System.out.println(props.getProperty("name"));
        System.out.println(props.getProperty("mobile"));
    }

结果显示为:
在这里插入图片描述


版权声明:本文为zzu957原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。