【设计模式】
我的编程世界
这个作者很懒,什么都没留下…
展开
-
简单工厂模式、工厂模式、抽象工厂模式 与反射技术应用
简单工厂模式:由一个抽象运算类,继承于抽象运算类的各种具体运算类和一个运算工厂类组成。其工作方式为:由抽象运算类定义两个运算数和虚运算方法,在其子类中通过重写虚函数来具体实现两个运算对象之间的运算。而确定这两个运算对象进行怎样的数学运算便是通过简单运算工厂类来决定的。也就是在简单工厂运算类中通过switch语句等逻辑判断来实现对运算方式的判断。需要在客户端需要输入参数;来给出判断条件。原创 2012-01-29 10:14:52 · 1168 阅读 · 2 评论 -
设计模式总结(一)
1. 简单工厂模式 简单工厂模式通过抽象一个运算类使得继承于他的具体抽象类具有自己的属性和方法,而究竟使用哪种抽象类是通过简单工厂类中的判断语句来确定的。其具体过程为首先实例化一个简单工厂类,根据输入的参数来确定实例化哪种具体运算类,在由实例化的具体运算类调用自身的运算方法实现两个数的运算。 2. 策略模式 策略模式定义了算法家族,分别封装起来,让他们之间可以互相替换原创 2012-01-29 16:14:33 · 708 阅读 · 1 评论 -
设计模式(三)
12. 组合模式 将对象组合成树形结构以表示‘部分-整体’的结构层次。组合模式使得用户对单个对象和组合对象的使用具有一致性。 当需求中是体现部分与整体层次的结构时,希望用户可以忽略组合对象与单个对象的不同,统一的使用组合结构中的所有对象时,就应该考虑使用组合模式。如每个省都有自己的教育部门、民政部门,而该省下属的各个市也有自己的教育部门、民政部门,该市下属的各县仍然有这样几个部门原创 2012-01-30 14:50:06 · 716 阅读 · 1 评论 -
设计模式总结(二)
6. 外观模式(Facade) 为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一个子系统更加容易使用。 该模式用于以下情况:如果某些类的性质相同(即在某方面来讲可以把他们归为同一种类型的类),他们具有相同的一组方法,而在同一时刻我们需要让这些类执行相同的操作,这时我们可以让他们属于一个高层类(即高层类与具体的类之间是has-a的关系)我们只管对这原创 2012-01-30 08:12:39 · 613 阅读 · 1 评论 -
设计模式真的完美无缺吗?代理模式重磅升级版----动态代理
一提起代理模式相信很多人都会给我这样的答案“代理模式很简单,无非是有两个类(类A和类B),他们实现了同一个接口(或继承同一个抽象类),在类A中拥有类B的引用,当调用类A中方法时实际上调用的是类B中的方法,它屏蔽了真正的实现类,将实现类与客户端解耦”。文字描述起来总是显得那么模糊不清,下面我们通过类图来简单看一下什么是代理模式。原创 2013-08-16 11:43:49 · 2123 阅读 · 26 评论