
设计模式
东风夜放花千树
东风夜放花千树更吹落星如雨
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
设计模式(5)--单件模式
同步一个方法可能造成程序执行效率下降100倍. 静态初始化的控制权是在Java手上 一个类,一个责任 原则. ( 类应该做一件事,而且只做一件事) 但单件做了两件事, 一是 管理自己的实例(并提供全局访问变量) 二是在应用程序中担任角色, (1). 私有构造器.不提供对外访问 (2). 静态方法对外提供类本身实例. (3) . 只有一个实例 单例模式: (原创 2014-05-15 23:14:52 · 703 阅读 · 0 评论 -
设计模式(10)--状态模式
组合 、委托 基本常识:策略模式和状态模式是双胞胎,在出生时才分开。 一般来说,我们把策略模式想成是除了继承之外的一种弹性替代方案。 什么时候用接口? or 抽象类? 当实现接口的类中,重复代码太多时,可考虑继承 。 OO模式: 状态模式--允许对象在内部状态改变时改变它的作为,对象看起来好像修改了它的类 如: 因为一个状态对应一个类, 每个类中的方法名相同,但实现不同原创 2014-05-27 16:43:41 · 706 阅读 · 0 评论 -
设计模式(11)--代理模式之RMI
(1)确定变量和返回值是属于原语(primitive)类型或者可序列化的(Seriailizable)类型。原语类型 都实现了Seriailizable接口。 (2)transient 关键字,告诉JVM不要序列化这个字段。 动态类下载(dynamic class downloading ) 代理模式 :控制对象的访问 代理模式有很多种。如:远程代理,虚拟代理。动态代理(原创 2014-06-06 18:19:17 · 2275 阅读 · 0 评论 -
设计模式(9)--迭代器与组合模式
散列表(hashtable) 迭代器是用来遍历集合的。 Java5后集合都出了自己的遍历方式 如原创 2014-05-23 16:52:38 · 733 阅读 · 0 评论 -
设计模式(9.1)--迭代器与组合模式
缓存(caching): 当组合结构很复杂,或者遍历的代价太高,那么实现组合节点的缓存就很有帮助。 (1) Java Collection Framework 指的是一群类的接口。 其中包括了 ArrayList, Vector , LinkedList , Stack ,和 PriorityQueue. 这些类都实现了java.util.Collection接口。 (2) Collect原创 2014-05-23 18:22:24 · 718 阅读 · 0 评论 -
设计模式(8)--模板方法模式
关键词 :hook 钩子 Applet 中 init() destory() 为钩子,需要子类去实现。 新原则: 别调用我们,我们会调用你们 高层调用低层 低层不能调用高层。 目的 :封装算法 模板方法:子类决定如何实现算法中的步骤 策略:封装可互换的行为,然后使用委托来决定要采用哪一个行为 工厂方法:由子类决定实例化哪个具体类 OO原则:新原则上面 OO模式:原创 2014-05-20 19:07:43 · 671 阅读 · 1 评论 -
设计模式(3)--装饰者模式
看了几集毛骗( 不是毛片 是毛骗) 就11点了.. 给爱用继承的人一个全新的设计眼界. 在不修改现有代码的情况下.扩展行为. >. 装饰者和被装饰者对象有相同的超类型. >. 你可以用一个或多个装饰者包装一个对象. >. 既然装饰者和被装饰者对象有着相同的超类型,所以在任何需要原始对象(被包装)的场合,可以用装饰过的对象代替它. >.(关键点)装饰者可以在所委托被装饰原创 2014-05-13 23:49:29 · 647 阅读 · 0 评论 -
设计模式(4)-- 工厂方法 和 抽象工厂
今天是比较闲的一天。 解决了一个密码强度原创 2014-05-14 17:01:56 · 549 阅读 · 0 评论 -
设计模式(7)--适配式模式与外观模式
转换接口。 引入新原则: ” 最少知识“原则 作用为 外观模式 面向对象的适配器:将一个接口转换成另一个接口,以符合客户的期望。 对象适配器 与 类适配器 OO原则:(1)封装变化 (2)多用组合,少用继承 (3)针对接口编程,不针对实现编程 (4)为交互对象之间的松耦合设计而努力 (5)类应该对扩展开放,对修改关闭。(6) 依赖抽象,不要依赖具体类。(7)只和朋友交流。原创 2014-05-19 17:34:26 · 728 阅读 · 0 评论 -
共享模式词汇的威力
不只是模式名称,而是一整套模式背后所象征的质量,性性,约束. 共享模式词汇的威力 你使用模式和他人沟通时,其实"不只是"和他人共享"行话"而已. 共享的模式词汇"威力强大".当你使用模式名称和其他开发人员或者开发团队沟通时,你们之间交流以的不只是模式名称, 而是一整套模式背后所象征的质量,特性,约束. 模式能够让你用更少的词汇做更充分的沟通.当你用模式描述的时候,原创 2014-05-10 15:37:32 · 527 阅读 · 0 评论 -
设计模式(2)--观察者模式
小雨兮兮. 运动员们毵了原创 2014-05-11 21:59:07 · 511 阅读 · 0 评论 -
设计模式(1)--策略模式
接口与抽象类的的应用. 面向接口的编程, 以接口为成员变原创 2014-05-10 18:26:03 · 440 阅读 · 0 评论 -
设计模式(6)--命令模式
关键词 :空对象 有人称为设计模式 三层调用 1. 封装调用 , 把封装带到一个全新的境界: 把方法调用(method invocation) 封装起来. 2. 命令模式可将"动作的请求者" 从"动作的执行者" 对象中解耦. 3. 当需要将发出的请求和执行请求的对象解耦的时候,使用命令模式. OO原则: (1)封装变化 (2) 多用组合,少用继承 (3)针对接口编程,不针对原创 2014-05-17 19:28:19 · 665 阅读 · 0 评论 -
为何使用设计模式
设计模式是开发人员经过大量实战,大量经验总结出的一套围绕OO原则的模式, 以应对随时想到系统以后 可能需要的变化以及应付变化的原则. 模式只不过是利用OO设计原则.... 怀疑的开发人员 开发人员: 好吧!但是不都只是好的面向对象设计吗?我是说,我懂得运用封装,抽象,继承,多态,我真的还有 必要考虑设计模式吗?运用OO,一切不是都很直接吗?这不正是我过去上了一堆OO课程的原因吗原创 2014-05-10 15:38:42 · 447 阅读 · 0 评论 -
设计模式(11)--代理模式之动态代理
保护代理 在调用方法前后,进行一些动作。 动态代理之所以叫动态代理是因为,是运行时才将它的类创建出来。 日志 、 连接、 事务、 Java在java.lang.reflect包中有自己的代理支持,利用这个包你可以要运行时动态地创建一个代理类,实现一个或多个接口,并将方法的调用转发到你所指定的类。因为实际的代理类是在运行时创建类,我们称这个Java技术为:动态代理。 Jav原创 2014-07-21 17:10:04 · 821 阅读 · 0 评论