java23种设计模式之工厂模式(Factory)的实现
2012-03-16 03:18
816 查看
http://www.0755build.com
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());
}
}
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());
}
}
相关文章推荐
- 设计模式(Design Pattern) - 创建型模式(Creational Pattern) - 工厂模式(FactoryMethod) - Java实现
- 23种设计模式之工厂模式(创建型,1 Factory,c++实现)
- java 23种设计模式--工厂模式(factory)
- 【java设计模式】之 工厂(Factory)模式
- 23种经典设计模式的java实现之生成器模式
- 设计模式之工厂模式(Factory Pattern)用C++实现
- Java开发中的23种设计模式--工厂
- java 设计模式之工厂模式Factory Method
- java实现的23种设计模式 (个人推荐)
- JAVA设计模式(01):创建型-工厂模式【简单工厂模式】(Simple Factory)
- JAVA23种设计模式实现
- 设计模式-简单工厂设计模式与策略模式之java实现
- [转]23种经典设计模式的java实现_5_职责链模式
- 23种经典设计模式的java实现_3_桥接模式
- 23种设计模式-FactoryMethod(工厂方法)设计模式
- java设计模式之工厂模式(Factory)
- 设计模式(一)----- 工厂方法(FactoryMethod)----(JAVA版)
- 23种设计模式之单例模式(java 实现)
- 设计模式 - 工厂方法(Factory Method) C++实现
- 23种java设计模式之工厂模式