Loading

摘要: 状态模式 通过改变对象内部的状态来帮助对象控制自己的行为 状态机 状态图 实现1.0 状态 final static int SOLD_OUT = 0; final static int NO_QUARTER = 1; final static int HAS_QUARTER = 2; final 阅读全文
posted @ 2020-06-21 17:51 cpaulyz 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 装饰者模式 动态地将责任附加到对象上,若要有扩展功能,装饰者提供了比继承有弹性的替代方案。 类图 应用 例子 咖啡类,可以加调料,计算价格 想法 设计 代码示例 public class Mocha extends CondimentDecorator{ Beverage beverage; pub 阅读全文
posted @ 2020-06-21 17:50 cpaulyz 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 外观模式 为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 最少知识原则 只和密友交谈 例子 public class ShapeMaker { private Shape circle; private Shape rectangle; pr 阅读全文
posted @ 2020-06-21 17:48 cpaulyz 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 适配器模式 将一个类的接口,转换成客户期待的另一个接口 可以有双向适配器,只要实现了两个接口 类适配器 采用继承的方法 // 已存在的、具有特殊功能、但不符合我们既有的标准接口的类 class Adaptee { public void specificRequest() { System.out. 阅读全文
posted @ 2020-06-21 17:47 cpaulyz 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 模板方法模式 在一个方法在定义了一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 抽象类专注算法本身,子类提供完整实现 代码复用最大化 例子 abstract class AbstractClass{ final void templ 阅读全文
posted @ 2020-06-21 17:46 cpaulyz 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 命令模式 将“动作的请求者”从“动作的执行者“对象中解耦 将”请求“封装成对象,可以支持撤销等操作 优点: 1、降低了系统耦合度。 2、新的命令可以很容易添加到系统中去。 **缺点:**使用命令模式可能会导致某些系统有过多的具体命令类。 需要对行为进行记录、撤销或重做、事务等处理时考虑用命令模式 应 阅读全文
posted @ 2020-06-21 17:45 cpaulyz 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 观察者模式 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 Java内置的观察者模式 两种送出通知的方式 notifyObservers() notifyObservers(Object arg) 接收通知的方式 update(Observa 阅读全文
posted @ 2020-06-21 17:43 cpaulyz 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 复合模式 一种由模式所构成的模式 在设计中携手合作解决许多问题的模式 模式通常被一起使用,并被组合在同一个设计解决方案中 复合模式在一个解决方案中结合两个或多个模式,以解决一般或重复发生的问题 MVC MVC是由数个设计模式结合起来的模式 观察者模式 策略模式 组合模式 阅读全文
posted @ 2020-06-21 17:42 cpaulyz 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 迭代器模式 提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 可以用同一种方法来遍历 例子 // 如果是arraylist之类的,内置的就有了 public class PancakeHouseMenu implements Menu{ Arraylist<MenuIte 阅读全文
posted @ 2020-06-21 17:41 cpaulyz 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 代理模式 远程代理 远程代理好比“远程对象的本地代表” Java RMI 客户调用客户辅助对象上的方法 客户辅助对象打包调用信息,通过网络传给服务辅助对象 服务辅助对象调用服务对象,将结果打包返回给客户辅助对象 客户辅助对象把结果返回给客户对象 以上过程对客户是透明的 RMI把客户辅助对象称为stu 阅读全文
posted @ 2020-06-21 17:40 cpaulyz 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 策略模式 定义算法组,分别封装起来,让它们之间可以相互替换。让算法的变化独立于使用算法的客户 优点: 1、算法可以自由切换。 2、避免使用多重条件判断。 3、扩展性良好。 缺点: 1、策略类会增多。 2、所有策略类都需要对外暴露。 例子 需求 实现一群鸭子类,有不同的飞行行为、外观、叫声。。。 不使 阅读全文
posted @ 2020-06-21 17:39 cpaulyz 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 网络实验总结练习 1 小组成员 2 实验目的 各组自行设计拓扑及功能,实现后提交报告 拓扑需使用动态路由协议。 拓扑中需包含VLAN及trunk技术。 拓扑至少需包含设备:2台交换机、4台路由器(路由器之间串线链接)、4台PC。 拓扑中包含两项较为复杂的网络技术(如ACL,NAT等) 。 实验报告需 阅读全文
posted @ 2020-06-21 15:04 cpaulyz 阅读(2027) 评论(0) 推荐(0) 编辑
摘要: VLAN间路由实验 1 小组成员 2 实验目的 设计拓扑,验证VLAN间路由,使用两种方式(三层交换机和单臂路由)实现vlan间通信并试分析其性能差异。 实验设备 PC:四台; Router:一台; 交换机:三台; 三层交换机:一台; 交叉线; 直连线; 3 单臂路由 3.1 实验拓扑 3.2 实验 阅读全文
posted @ 2020-06-21 15:02 cpaulyz 阅读(871) 评论(0) 推荐(0) 编辑
摘要: 组合模式 面对这样一种问题,可能List里面套List,是一种如下的树形数据结构 简单来说,叶子节点才是实际对象,其他都是一个集合 这时候就需要组合模式 组合模式将对象组合成树形结构以表示"部分-整体"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 想表示对象的部分-整体层次结构 阅读全文
posted @ 2020-06-21 00:55 cpaulyz 阅读(164) 评论(0) 推荐(0) 编辑