设计模式
文章平均质量分 86
China祥
软件入门青年
展开
-
观察者模式(Observer Pattern)_Java
Observer Pattern 问题: 有一个气象站(WeatherData),用来给各种手机(苹果,三星,摩托罗拉等等)提供气象信息,要求是,当气象信息更新的时候,给各个手机发送新的天气信息。 方案一 //Iphone类 package com.pattern.observer; /** * 苹果手机 */ public class Iphone { /**...原创 2013-10-17 10:43:11 · 108 阅读 · 0 评论 -
装饰者模式(Decorator Pattern)_Java
Decorator Pattern 问题 我开了一家蛋糕店,蛋糕最普通的是面包奶油蛋糕(MilkCake),你可以根据自己的喜好,在这个普通的蛋糕上添加你喜欢的一些装饰,我们提供的有: 草莓:Strawberry=$8 巧克力:Chocolate=$11 苹果:Apple=$5 橘子:Orange=$3 .... 普通蛋糕:$100 现在我需要做一个草莓巧克力蛋糕,需要多少钱? ...原创 2013-10-17 16:26:35 · 120 阅读 · 0 评论 -
单例模式(Singleton Pattern)_Java
Singleton Pattern 确保一个类只有一个实例,并提供一个全局访问点 模式一 package com.pattern.singleton; public class Temp { //临时类,用来对比单例模式 } package com.pattern.singleton; public class Singleton { //私有化构造函...2013-10-17 17:22:19 · 75 阅读 · 0 评论 -
适配器模式(Adapter Pattern)_Java
Adapter Pattern 问题: 有一只狼,它披上了羊皮,从外表上看,根本看不出来它是一只狼,只有当它跑和叫的时候,才能区分它! Java实现 package com.pattern.adapter; public interface Sheep { public void run();//羊叫 public void bark();//羊跑 ...原创 2013-10-18 09:13:11 · 100 阅读 · 0 评论 -
简单工厂模式(Simple Factory Pattern)_Java
Simple Factory Pattern 简单工厂模式(Simple Factory Pattern) 工厂是什么呢?工厂是生产产品的,BeanFactory是生产Bean对象的,水果工厂是生产水果的,工厂模式的作用就是,我们不需要去new一个对象了,直接通过工厂模式,让工厂给我们提供需要的对象即可。 下面以水果工厂为例,简单说一下 package com.pattern...原创 2013-10-18 11:02:05 · 148 阅读 · 0 评论 -
方法工厂模式(Method Factory Pattern)_Java
Method Factory Pattern 工厂方法模式工厂模式总共有三种 简单工厂模式 工厂方法模式 抽象工厂模式 我们先不说怎么分他们,我们先说问题! 还拿水果工厂来说,以前科技不发达,苹果就是苹果,橘子就是橘子,现在不行了,苹果的种类变多了,又是红富士,又是蓝富士的,反正不管叫啥,苹果下面有一堆各式各样的苹果了,如果我们还使用简单工厂模式的话,我们需要写一大堆if...else...判...2013-10-18 12:43:12 · 102 阅读 · 0 评论 -
抽象工厂模式(Abstract Factory Pattern)_Java
Abstract Factory Pattern 抽象工厂模式 抽象工厂,怎么理解呢? 简单点就是指一个工厂的出口不再是之前的一个了,变成多个了,举个例子来说。 工厂接口下有俩个子工厂,一个生产热带产品,一个生产亚热带产品,他们分别生产两种物品,水果和蔬菜!热带工厂和亚热带工厂均提供了俩个产品的出口,所以他们都是抽象工厂。 package com.pattern.abs...原创 2013-10-19 17:31:31 · 109 阅读 · 0 评论 -
命令模式(Command Pattern)_Java
Command Pattern 餐厅中的命令模式: 客人给服务员下菜单,服务员记录下来,给厨师,让厨师做出美丽的菜肴! 这其中,客户是跟厨师见不着的,对于程序来说即降低了耦合度。 我们再以遥控器为例,说一下命令模式 小红按下了手中的遥控器的开按钮,遥控器给电视发送开的命令,电视接收到命令后执行开的动作,电视被打开。小红看完了电视,按下关的按钮,同样,遥控器控制电视关的操作,这期间,小红是...2013-10-19 18:54:45 · 307 阅读 · 0 评论 -
代理模式(Proxy Pattern)_Java
Proxy Pattern 代理模式为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标之间起到中介的作用。 举个例子: 我想买一台lenovo的电脑,我去总部去买,可是人家不卖给我,于是我找到了联想的代理,从代理那里买到了一台电脑,我知道,他们肯定加价了! 上面的例子就是一个简单的代理模式,我不能直接去总部买,但是...原创 2013-10-21 18:48:43 · 107 阅读 · 0 评论