java23种设计模式之工厂模式(Factory)就相当于创建实例对象的new,我们经常要根据类class来生成实例对象,如A a=new A(),采用工厂模式(Factory)虽然会让你多做一些工作,但是工厂模式(Factory)会给你的系统带来更大的可扩展性和尽量少的修改量。下面是工厂模式的实现代码,首先定义一个接口Sample,让各个类实现改接口
package yw.factory;
public interface Sample {
}
package yw.factory;
public class A implements Sample{
/*
* 类A的具体内容
*/
}
package yw.factory;
public class B implements Sample{
}
package yw.factory;
public class C implements Sample{
}
下面是工厂类,专门用来生产对象实例
package yw.factory;
/*
* (Factory)工厂类
*/
public class Factory {
//工厂类获取对于的类实例
public static Sample creator(int which){
switch(which){
case 0:
return new A();
case 1:
return new B();
case 2:
return new C();
default:
return null;
}
}
}
客户端使用实例
package yw.factory;
/*
* 客户端使用工厂类获取类实例
*/
public class TestFactory {
public static void main(String args[]){
Sample a=Factory.creator(0);
Sample b=Factory.creator(1);
Sample c=Factory.creator(2);
System.out.println(a.getClass().getName());
System.out.println(b.getClass().getName());
System.out.println(c.getClass().getName());
}
}