创建一个Child类继承Wife,不写任何内容:
package entity;
public class Child extends Person{
}
然后在Wife类中添加静态方法:
/** * 静态工厂方法 * @return */ public static Wife createChild(){ Child child = new Child(); child.setName("儿子"); return child; }
然后xml配置:
测试方法:
@Test public void fun3(){ System.out.println("begin!"); Wife wife = app.getBean("wife", Wife.class); System.out.println(wife); }
输出结果:
下面是非静态方法:
测试方法:
/** * 非静态工厂 */ @Test public void fun4(){ System.out.println("begin!"); Wife wife = app.getBean("wife", Wife.class); System.out.println(wife); }
新建一个工厂类:
package entity; public class WifeFactory { public Wife createChild(){ Child child = new Child(); child.setName("儿子"); return child; } }
xml配置
运行结果: