设计模式
EllisMiao
对任何事情抱着敬畏之心
展开
-
Java设计模式之适配器模式
适配器顾名思义就是把一样东西转换成自己想要的东西。生活中也存在适配器模式,例如常见的安卓数据线是不能给苹果手机充电的,但是苹果提供了一种转接头,在安卓数据线上套上转接头就可以给苹果手机充电了。下面写个demo来实现适配器模式。数据线大口/** * 大口 * @author S * */ public interface BigPort { public String useBigPo原创 2017-08-10 13:16:11 · 260 阅读 · 0 评论 -
Java设计模式之观察者模式
模式介绍观察者模式定义了一些列对象之间的一对多关系。当一个对象改变状态,其他依赖者都会收到通知。观察者模式提供了一种对象设计,让主题和观察者之间松耦合。应用场景在生活中有很多观察者的模式应用,譬如我们用手机短信订阅移动公司的天气预报,我们和移动公司就是观察者和目标的关系,还有我们订阅微信公众号等等。例子说明下面写一个关于微信公众号订阅的demo来演示一下观察者模式。观察者接口/** * 观察者接口原创 2017-08-10 21:41:30 · 228 阅读 · 0 评论 -
Java设计模式之责任链模式
模式介绍使用多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,只到有对象处理它为止。应用场景多个对象可以处理同一个请求,但具体由哪一个对象处理则在运行时动态决定。 在请求处理者不明确的情况下向多个对象中一个提交一个请。 需要动态指定一组对象处理请求。代码例子在生活中也会用到责任链模式,例如在公司里面的员工请假,首先要向主管请求,原创 2017-08-20 15:44:20 · 295 阅读 · 0 评论 -
Java设计模式之代理模式
模式介绍代理模式为其他对象提供一种代理以控制对这个对象的访问。应用场景生活中有很多代理模式的例子,例如你有房要出售,就会找中介帮忙把你的房子出售,这个过程中介就是代理。代码例子使用一个房东让中介帮忙出售房子的demo静态代理房屋出售接口/** * 房屋出售 */ public interface SellHouse { /** * 发布出售内容 */ publ原创 2017-08-13 00:46:47 · 266 阅读 · 0 评论 -
Java设计模式之迭代器模式
模式介绍迭代器模式主要是提供了一种顺序访问一个容器对象中的各个元素,而又不需要暴露该对象的内部表示。应用场景遍历一个容器对象时代码例子迭代器接口/** * 迭代器 */ public interface Iterator { /** * 是否有下一个对象 * @return */ public boolean hasNext(); /**原创 2017-08-20 18:39:05 · 226 阅读 · 0 评论 -
Java设计模式之装饰模式
模式介绍装饰模式是使用一种对客户端透明的方式来动态地扩展对象的功能,同时它也是继承关系的一种替代方案之一。装饰模式相比生成子类更为灵活。应用场景需要透明且动态地扩展类的功能时。生活中也能看到很多装饰模式的例子,例如衣服上的装饰物,各种搭配等等。代码例子下面用一个房子带花园,带泳池的例子来实现一下装饰模式。 房屋抽象类/** * 房屋 * @author S * */ public abst原创 2017-08-22 21:53:27 · 339 阅读 · 1 评论