设计模式DP(1)工厂方法
2013-03-01 11:20
190 查看
设计模式DP(1)工厂方法FactoryMethod
特点:一个类的实例化具体到让子类去实例化
根据不同的类型,实例化特定的接口
向上兼容性
代码:
##定义任务工作接口
public interface IWork{
public void doWork();
}
public class FatherWork implements IWork{
public void doWork(){
System.out.println("Father do work");
}
}
public class SonWork implements IWork{
public void doWork(){
System.out.println("Son do work");
}
}
##定义工厂方法
public interface IFactory{
public IWork getWork();
}
public class FatherFactory implements IFactory{
public IWork getWork(){
return new FatherWork();
}
}
public class SonFactory implements IFactory{
public IWork getWork(){
return new SonWork();
}
}
##下面测试一下
public static void main(String[] args){
IFactory factory1 = new FatherFactory();
factory1.getWork().doWork();
IFactory factory2 = new SonFactory();
factory2.getWork().doWork();
}
##输出结果
Father do work
Son do work
特点:一个类的实例化具体到让子类去实例化
根据不同的类型,实例化特定的接口
向上兼容性
代码:
##定义任务工作接口
public interface IWork{
public void doWork();
}
public class FatherWork implements IWork{
public void doWork(){
System.out.println("Father do work");
}
}
public class SonWork implements IWork{
public void doWork(){
System.out.println("Son do work");
}
}
##定义工厂方法
public interface IFactory{
public IWork getWork();
}
public class FatherFactory implements IFactory{
public IWork getWork(){
return new FatherWork();
}
}
public class SonFactory implements IFactory{
public IWork getWork(){
return new SonWork();
}
}
##下面测试一下
public static void main(String[] args){
IFactory factory1 = new FatherFactory();
factory1.getWork().doWork();
IFactory factory2 = new SonFactory();
factory2.getWork().doWork();
}
##输出结果
Father do work
Son do work
相关文章推荐
- 设计模式之工厂方法模式及代码示例
- 设计模式之工厂方法模式随记
- 23种设计模式-FactoryMethod工厂方法
- 23种设计模式之工厂方法
- C#设计模式--工厂方法
- 设计模式必知必会:三种工厂方法之对比
- 设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- Java设计模式之工厂方法模式
- python实现工厂方法设计模式
- 软件爱 设计模式--工厂模式(简单工厂,工厂方法,抽象工厂)
- 设计模式学习之工厂方法模式和原型模式
- 设计模式(2):工厂方法模式
- 【创建型设计模式】-简单工厂方法设计模式
- 设计模式之工厂方法模式
- 设计模式——工厂方法 Java源代码
- Spring--IoC--Bean的装配--工厂方法设计模式
- 设计模式--工厂方法(FactoryMethod)
- Java设计模式之工厂方法模式
- 23种设计模式(2):工厂方法模式
- 设计模式四:Factory method工厂方法——对象创建型模式