![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 86
kandy_java
我爱JAVA一直以它为目标勤奋成就未来.
展开
-
GRASP (职责分配原则)
要学习设计模式,有些基础知识是我们必须要先知道的,设计模式是关于类和对象的一种高效、灵活的使用方式,也就是说,必须先有类和对象,才能有设计模式的用武之地,否则一切都是空谈,那么类和对象是从那冒出来的呢?这时就需要比23种设计模式更重要更经典的GRASP模式登场了,嘿嘿,原来这才是老大! GRASP(General Responsibility Assignment Software Patter转载 2014-03-08 20:54:28 · 729 阅读 · 0 评论 -
设计模式_桥接模式
如果在子类的扩展上有2个维度,如果你想解耦合来解决他们的排列组合时用桥接模式(2个维度排列组合) GiftImpl.java package com.bjsxt.dp.bridge; public class GiftImpl { } Gift.java package com.bjsxt.dp.bridge; public class Gift { protec原创 2014-03-12 10:32:42 · 485 阅读 · 0 评论 -
设计模式_观察者模式
问题: 请模拟下列情形 小孩在睡觉 醒来后要求吃东西 package com.bjsxt.dp.observer.test1; class Child implements Runnable{ private boolean wakeUp=false; //小孩处于睡着状态 void wakeUp()原创 2014-03-09 15:29:42 · 497 阅读 · 0 评论 -
设计模式_命令模式
Command.java package com.bjsxt.dp.command; public abstract class Command { public abstract void execute(); public abstract void unDo(); } HugCommand.java package com.bjsxt.dp.command; p原创 2014-03-12 15:59:54 · 374 阅读 · 0 评论 -
设计模式_策略模式
针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使它们可以相互替换。 Comparable.java package com.bjsxt.dp.strategy; public interface Comparable { public int compareTo(Object o); } Comparator.java package com.bjsxt原创 2014-03-10 16:22:00 · 438 阅读 · 0 评论 -
设计模式_迭代器模式
请自己动手写一个可以动态添加对象的容器 考虑容器的可替换性 Iterator.java package com.bjsxt.dp.iterator; public interface Iterator { Object next(); boolean hasNext(); } Collection.java package com.bjsxt.dp.iterat原创 2014-03-09 23:18:57 · 470 阅读 · 0 评论 -
设计模式_代理模式
代理模式的主要作用是为其他对象提供一种代理以控制对这个对象的访问。 Moveable.java package com.bjsxt.proxy; public interface Moveable { void move(); } Tank.java package com.bjsxt.proxy; import java.util.Random; pub原创 2014-03-11 23:31:55 · 463 阅读 · 0 评论 -
设计模式_抽象工厂模式
系列产品(车、武器、食品补给……) Vehicle.java package com.bjsxt.dp.factory.abstractfactory; public abstract class Vehicle { public abstract void run(); } Weapon.java package com.bjsxt.dp.factory.abstractfa原创 2014-03-11 14:23:59 · 413 阅读 · 0 评论 -
设计模式_简单工厂模式
只给司机一辆车(单例、多例) 任意定制交通工具的类型和生产过程 Moveable.java package com.bjsxt.dp.factory; public interface Moveable { void run(); } VehicleFactory.java package com.bjsxt.dp.factory; public abstrac原创 2014-03-11 14:11:21 · 438 阅读 · 0 评论 -
设计模式_责任链模式
Filter.java package com.bjsxt.dp.filter; public interface Filter { void doFilter(Request request, Response response, FilterChain chain); } FilterChain.java package com.bjsxt.dp.filter; i原创 2014-03-09 15:46:19 · 471 阅读 · 0 评论 -
UML类图几种关系的总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的转载 2014-03-20 12:18:49 · 389 阅读 · 0 评论 -
设计模式_状态模式
MMState.java package com.bjsxt.dp.state; public abstract class MMState { public abstract void smile(); public abstract void cry(); public abstract void say(); } MMHappyState.java package原创 2014-03-12 16:04:15 · 439 阅读 · 0 评论