随笔分类 - 设计模式
目前只限于在think in java中发现的设计模式
摘要:UML全名为:Unified Modeling Language。是程序语言面向对象之后大家认可的一种设计“图纸”,往往在之前的使用过程中大家都觉得没什么必要投入学习也能看懂。这就是这类图的优势。 但是你如果需要认真的完全看懂它,那么必须投入学习。 下面只是个人的一个记录,转载来自:http://w
阅读全文
摘要:外观模式,类似于代理模式,但是感觉是代理模式的多重组合形态。 通过外观类的内部的组合对象,进行方法重叠调用 适合整合较为复杂的功能,避免重复代码 首先写内部组合子类 外观类
阅读全文
摘要:模板方法的作用在于套用同一个模板填写不同的内容。 这个时候要避免修好改原有内容,同时又要最少代码。 最好的方法是父类保持不能改动的方法中使用可重写方法。 最好的情况下是用抽象类,迫使子类必须填写父类类的抽象方法。我就不这么讲究了。我经验上看,这些适合协议类的用途,比如SOAP协议下的报文。 学生类1
阅读全文
摘要:工厂方法模式是一种难以理解的方式。 它是工厂的工厂方法。 相当于原本是通过工厂生产产品,现在是通过工厂生产能生产产品的工厂 为了解决一个问题把另外一个问题又恢复了,在我看来有点无用~~~~但是它满足了 工厂接口 工厂的工厂接口 工厂 工厂的工厂 运行方法 这样我们就可以把工厂类接口化,当我们需要增加
阅读全文
摘要:代理模式跟之前的策略模式,装饰模式差距不大,但是代理模式不能无限递归,比策略模式更加解耦 通过当前对象调用某个方法,同时也调用对象内部属性对象的方法。 个人感觉无需继承也可以,继承了以后替换起来成本比较低 下面是实现
阅读全文
摘要:装饰模式是指一个对象内部递归拥有自己一样的对象。不断对对象自己进行修饰,或者实现方法进行改造,就像圣诞树一层一层挂上不同的装饰品一样。 典型的常见的情况是linkList。还有输入输出流的文件流,字节流,字符流,缓冲流。 以下是一个简单的实现方法,主要作用于方法体中,产生连续调用的效果。 下面是实现
阅读全文
摘要:策略模式是一种简单的模式,利用继承(实现)关系。 对同一个功能产生不同的子类,对某个方法进行不同的策略 代码如下 这样我们通过替换显示层的new对象就可以控制某个功能的不同实现了。。。。。 一般Spring
阅读全文
摘要:通过工厂来返回不同的对象,可使用同一种方法。 抽象类: 加减乘数实现类: 工厂类与实现: 这样通过控制显示层的代码即可控制整个实现逻辑。。。
阅读全文
摘要:装饰器模式: 这种模式的用作在于加工本质,对本质进行一些“美化”。就像给咖啡加上牛奶,糖球,泡沫,巧克力一般。一般情况下会使用带有顶级父类的参数构造器来进行对顶级父类加工。要谨记一件事情就是他只能明显工作于最后一层。他是对于java中实现混型的一种手法。相对于接口组合实现混型来说这种实现方式使用代码
阅读全文
摘要:模板方法模式:模板方法模式顾名思义就是一种构造模块化的设计模式。将一次行为分为多种行为,灵活的调用不同模块进行工作。比如在饭店吃饭,分为:点菜,吃饭,买单等行为无论什么饭店大致都是这三种行为。因此我们可以构建抽象类饭店吃饭,然后根据不同的饭店修改吃菜的这个步达到效果。他是一种类行为模式.。
阅读全文
摘要:工厂模式:工厂模式是利用工厂类的工厂方法创建对象的一种设计模式,目的是创建对象,但是很多时候创建对象我们会考虑很多其他因素~~~~比如在创建的过程中进行一些判断,通过不同的工厂模式就能把这些东西分离开来。 蛋蛋的抽象工厂模式普通工厂模式~~~~~抱着实用主义的精神看懂了两种模式就好不要去介意两者有什
阅读全文
摘要:迭代器模式:用来迭代一个容器集合数组的一种模式。可能大家很多时候是用for循环进行迭代的,但是实际上for循环内部不能使用remove方法,但是迭代器可以,这是因为迭代器内部进行了该方法的逻辑处理。同样我们也可以用到迭代器模式去迭代,他很好的封装了迭代方法。我们还可以从中进行一些特特异的迭代选取功能
阅读全文
摘要:抽象工厂模式:工厂模式是利用工厂类的工厂方法创建对象的一种设计模式,目的是创建对象,但是很多时候创建对象我们会考虑很多其他因素~~~~比如限定输入,限定返回值是否某个,比如在创建的过程中进行一些判断,通过不同的工厂模式就能把这些东西分离开来。 抽象工厂模式则是:构建多个产品接口形成产品族,放入工厂接
阅读全文
摘要:适配器模式:适配器模式相对来说抽象一些,我曾经一度分不清楚他与策略模式,状态模式的区别,其实还是很简单的。 策略模式讲究的是放入一个对象的不同子类服务另外一个对象,主对象之中的属性放入另外一个属性对象,主对象的方法调用属性对象方法来服务服务对象,强调组合关系。 而适配器模式讲究的是两个接口之间的互联
阅读全文
摘要:策略模式:策略模式类似于状态模式。也是通过多态表现的一种设计模式。区别在于状态模式讲究的是行为状态为主题,讲究不同对象的不同行为。策略模式则是以服务对象为主题,讲究对同一个对象使用不同的服务。 最终输出为: HELLO WORLDhello world 其中D为环境角色,A为抽象策略角色,BC为具体
阅读全文
摘要:状态模式:在一个对象内含有一个父类对象或者一个接口的引用。该引用指向一个子类对象,通过内部的方法改变子类对象的类别,从而改变同一个引用调用同样的方法达到不同的效果。
阅读全文
摘要:单例模式:将构造器设置为私有方法,构建一个静态方法,通过静态方法调用对象。常用又有饿汉模式与懒汉模式如下:
阅读全文

浙公网安备 33010602011771号