-
怎么在给一个对象注入另一个对象时指定后者的构造方法,并传参?5
比如说有一个Person类,一个Cat类
我想在创建Person时给他注入一个Cat数组,表示他养的猫
即Person中有属性private Cat[] cats;
而Cat中有name属性
在给Person注入Cat数组时,我想给每个Cat指定name属性
能否实现?
2012年7月15日 23:33
2个答案 按时间排序 按投票排序
-
指定构造方法就可以利用constructor-arg
<bean name="foo" class="x.y.Foo">
<constructor-arg>
<bean class="x.y.Bar"/>
</constructor-arg>
<constructor-arg>
<bean class="x.y.Baz"/>
</constructor-arg>
</bean>
传入不同的参数就是调用不同的构造方法2012年7月17日 18:55
-
你是想要spring的配置吗?
如果是spring的话,根据你的意思,可以配置如下:
applicationContext.xml<bean id="person" class="com.XXX.Person"> <property name="cats"> <list> <ref bean="cat1"/> <ref bean="cat2"/> </list> </property> </bean> <bean id="cat1" class="com.XXX.Cat"> <property name="name" value="小白"></property> </bean> <bean id="cat2" class="com.XXX.Cat"> <property name="name" value="小黑"></property> </bean>
2012年7月16日 09:10
相关推荐
Java构造方法是面向对象编程中的一个关键概念,用于初始化新创建的对象。在Java类中,构造方法是一个特殊的方法,它的名字必须与类名完全相同,没有返回类型,甚至不包括void关键字。当我们创建一个类的新实例时,...
构造方法是类的一个特殊方法,用于初始化新创建的对象。在Java中,构造方法与类名相同,没有返回类型。当我们使用`new`关键字创建对象时,会自动调用对应的构造方法。例如,`Student`类可能有一个构造方法来初始化...
●类的定义 ●对象的定义 ●类与对象 ●对象定义类的示例 ●实例变量 ●实例方法 ●实例成员的访问 ●对象的创建 ●构造方法 ●构造方法的特点 ●实例成员访问形式
每当创建一个对象时,JVM会在堆上分配一块内存,然后将该内存区域的地址返回给栈中的引用。如果对象包含其他对象作为成员变量,那么这些内部对象也会在堆上分配内存。 Java的垃圾回收机制进一步影响了内存管理。...
4. **Application对象**:.NET Framework提供了一个全局的`System.Windows.Forms.Application`对象,可以通过它的`Properties`属性存储数据。不过,这种方式通常用于临时存储,不适用于大型项目。 5. **使用委托和...
为了更好地理解 setter 注入和构造器注入,下面将创建一个 Maven 项目,添加依赖、配置文件和相关类。 首先,创建一个 Maven 项目,并添加依赖。然后,在 resources 下添加 Spring 的配置文件。最后,在项目中添加...
在Java编程语言中,构造方法(Constructor)是一个特殊的方法,它的主要作用是初始化新创建的对象。构造方法与类名相同,没有返回类型,也不需要在方法签名中声明void。了解和熟练使用构造方法是Java面向对象编程的...
无参构造方法用于简单的初始化,而有参构造方法允许在创建对象时传递参数,这样可以在对象创建时设定更复杂的初始状态。 #### 四、构造方法的调用 构造方法在使用`new`关键字创建对象时被自动调用。此外,在一个类...
Java 构造方法是编程语言中的一个重要概念,特别是在面向对象编程中,如Java。它们是类的特殊方法,用于初始化新创建的对象。当一个对象被创建时,构造方法会被自动调用,为对象的成员变量赋值,进行必要的设置,...
在Java中,构造方法是一个特殊的方法,它在创建对象时被自动调用,用于初始化新创建的对象的状态。本章节我们将深入探讨Java中的构造方法及其重要性。 首先,构造方法的命名必须与类名完全相同,不包含任何返回类型...
在给定的标题“java由类的完整路径利用反射给接口注入对象”中,我们关注的核心知识点是使用反射来动态地创建对象并将其注入到接口中。这个过程通常在依赖注入框架中见到,例如Spring框架。以下是对这一主题的详细...
因此,构造方法无需在程序中直接调用,而是在对象产生时自动执行。 构造方法的重载 一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行...
4. **参数可选**:构造方法可以带有参数,允许在创建对象时传递初始值,也可以没有参数,提供一个默认的构造方式。 在农业信息系统的人员信息管理部分,可能需要创建教师和学生类。例如,教师类(Teacher)包含姓名...
- 当在一个方法内部需要引用当前对象本身时,可以使用`this`。 2. **用法**: - 访问成员变量: - 例如,如果类中有成员变量和局部变量同名,使用`this`可以明确指定访问的是成员变量。 ```java this.color = ...
构造注入是一种依赖注入(Dependency Injection, DI)模式,它允许我们在创建对象时传入依赖,而不是让对象自行查找或创建它们。这样可以提高代码的可测试性和可维护性。 Castle Windsor 是一个强大的DI容器,它...
拷贝构造函数是另一个重要的构造函数,用于创建一个对象的副本。浅拷贝(Shallow Copy)仅仅复制对象的数据成员的值,而不复制动态分配的内存,可能导致两个对象共享同一块内存,改变一个对象会影响到另一个。深拷贝...
在这个例子中,我们创建了一个没有名字的`Button`对象,并直接实现了`onClick`方法。这样,当我们点击按钮时,就会打印出“Button clicked!”。 构造方法和匿名对象在实际开发中有着广泛的应用。构造方法用于初始化...
首先,"New"关键字在编程中通常用于实例化一个类的对象。在这个场景中,我们可能有一个名为“GrapeChart”的类,它包含了构建葡萄图所需的属性和方法。当我们使用`new GrapeChart()`时,我们就创建了一个新的葡萄图...