工厂方法模式(设计模式_08)
2016-12-15 19:02
267 查看
工厂方法模式遵循了,开放封闭式原则,我们直接用案例来体现:
此时切换到工厂方法模式区域
运行结果:
![](https://img-blog.csdn.net/20161215190102144?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTk2NzAwNg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
谢谢大家的观看,更多精彩技术博客,会不断的更新,请大家访问,
刘德利CSDN博客, http://blog.csdn.net/u011967006
// 定义一个电脑接口 public interface IComputer { // 获取电脑组件的方法 public void myStyle(); } // 电脑适配器实现电脑接口 public class Adapter implements IComputer{ public void myStyle() { System.out.println("这是电脑的充电器...."); } } // 电脑主板实现电脑 public class Board implements IComputer { public void myStyle() { System.out.println("这是电脑主板..."); } } // 显示屏类实现电脑 public class Display implements IComputer{ public void myStyle() { System.out.println("这是电脑显示屏..."); } }
此时切换到工厂方法模式区域
// 定义工厂接口,此工厂接口可以制作很多东西,例如 电脑,平板,手机,等等.... public interface IFactory { /** * 定义制造电脑的函数 * @return 返回电脑接口 */ public IComputer getComputer(); } // 工厂实现工厂接口 public class Factory implements IFactory { public IComputer getComputer() { // 这个Computer类,下面区域有介绍到 return new Computer(new Display(), new Board(), new Adapter()); } } // Computer类 // 电脑类实现电脑接口 == 一台电脑 public class Computer implements IComputer{ // public Computer(){}; private Display engine; private Board underpan; private Adapter wheel; public Computer(Display engine, Board underpan, Adapter wheel){ this.engine = engine; this.underpan = underpan; this.wheel = wheel; } public void myStyle() { engine.myStyle(); underpan.myStyle(); wheel.myStyle(); } } // 客户端程序 public class Main { public static void main(String [] args) { // 得到工厂 IFactory factory = new Factory(); // 调用工厂去制作电脑 IComputer car = factory.getComputer(); car.myStyle(); } }
运行结果:
谢谢大家的观看,更多精彩技术博客,会不断的更新,请大家访问,
刘德利CSDN博客, http://blog.csdn.net/u011967006
相关文章推荐
- 解读设计模式----工厂方法模式(FactoryMethod Pattern)
- 设计模式——工厂方法模式(Factory Method)
- 学习设计模式之旅之 工厂方法模式 推荐
- 我读设计模式之工厂方法模式
- AspectJ实现设计模式(三)——工厂方法模式
- 《星际争霸》与设计模式(2)——工厂方法模式
- 设计模式(Design Patterns)--工厂方法模式(Factory Method)
- .NET设计模式---工厂方法模式
- 设计模式学习-工厂方法模式
- .NET设计模式(5):工厂方法模式(Factory Method)
- 设计模式C#描述——工厂方法模式
- .NET设计模式-工厂方法模式
- 设计模式C#描述——工厂方法模式 mutou23 [原作]
- C#设计模式之工厂方法模式(游泳成绩排名例子)
- .NET设计模式之工厂方法模式
- Dot Net设计模式—工厂方法模式
- .Net设计模式学习笔记(五):工厂方法模式(Factory Method)
- 设计模式C#描述——工厂方法模式
- 设计模式学习--工厂方法模式
- AspectJ实现设计模式(三)——工厂方法模式