设计模式
车辙cz
程序员一枚,掘金小册:《SkyWalking 应用监控与链路跟踪》作者
展开
-
Java设计模式之三:工厂方法模式
由于之前一直在看并发编程的书籍,好几天没写设计模式的博文了(虽然已经实现了,但是懒)之前写了简单工厂模式,简单工厂模式本质就是根据传入的字符串进行对象的创建,但是这违反了开闭原则:对扩展开放,对修改封闭。假设我们有新的对象添加,那么势必需要在工厂类的静态方法中添加case,所以才有了工厂方法模式。工厂方法模式:这边我尽量用简单点的方式进行讲解,UML图就不画了,俺的机子太差,没装rat原创 2017-07-24 22:08:57 · 215 阅读 · 0 评论 -
java设计模式之十:模板模式
模板模式:利用继承来实现代码的重用。抽象父类:用来定义子类需要实现的类和父类已经写完的重复代码abstract class AbstractClass{ public abstract void operation1(); public abstract void operation2(); public void templateMethod(){原创 2017-11-02 10:58:44 · 177 阅读 · 0 评论 -
java设计模式之九:外观模式
1.外观模式简介外观模式介绍当我们开发Android的时候,无论是做SDK还是封装API,我们大多都会用到外观模式,它通过一个外观类使得整个系统的结构只有一个统一的高层接口,这样能降低用户的使用成本。外观模式定义为系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得子系统更加容易使用。转载 2017-11-02 10:32:28 · 168 阅读 · 0 评论 -
java设计模式之二:策略模式
策略模式与简单工厂模式原理上有许多相似的地方,都是利用java的继承和多态实现。在这里贴上代码:抽象父类:public abstract class Operation {protected double numberA;protected double numberB;public double getNumberA() {return numberA;}原创 2017-07-10 09:48:57 · 245 阅读 · 0 评论 -
java设计模式之一:简单工厂模式
本人开发主要以Java开发为主:故使用Java语言进行讲解。在程序设计中,为了更好的对程序进行扩展,出现了多样的模式,常用的设计模式为23种,这一次的讲解为简单工厂模式。这个模式的优点是工厂可以通过条件获取需要创建的对象,而不是自己创建对象。以计算机为例:创建抽象计算类:public abstract class Operation {protected double number原创 2017-07-09 23:10:09 · 185 阅读 · 0 评论 -
java设计模式之八:观察者模式
观察者模式作为设计模式之一:在各个项目中都有大量的引用,例如Listener。观察者模式的关键是:被观察者产生了变化或者达到一定要求,就通知观察者。而不是观察者时刻去检查被观察者的状态。举例一:天气变化,显示牌显示气温天气:被观察者显示牌:观察者。气象站:客户端。天气发生了变化,气象站作为客户端需要调用被观察者的提醒方法,提醒观察者。举例二:Android鼠原创 2017-11-01 16:21:33 · 147 阅读 · 0 评论 -
Java设计模式之七:建造者模式
之前因为去公司实习,晚上下班到家吃完饭快八点半了,看了会电视就想睡觉,都没时间写,趁这个双休,又重新学习了新的模式,建造者模式。建造者模式顾名思义:就是用来创建产品的。当然啦:这不像之前的工厂模式,创建一样物品就行了。这里的建造指的是创建物品的各个部分。举个例子:造一栋大厦,都是需要每一个步骤的,同时还有一定的流程,如果你漏掉某一部分,将会导致创建的产品出现错误。下面是代码:原创 2017-08-06 15:56:57 · 254 阅读 · 0 评论 -
Java设计模式之六:装饰模式
装饰模式属于设计模式中较为重要的一个模式了,在jdk IO中也有应用,有没有对下面的这句话很熟悉。BufferedReader bf=new BufferedReader(new InputStreamReader(new FileInputStream(path)));//字符流读取文件的方式,当然字符流是基于字节流的。其实这个就是装饰者模式,给FileInputStream添加了一层又原创 2017-07-28 21:38:38 · 340 阅读 · 0 评论 -
java设计模式之五:代理模式
代理模式顾名思义:一个人代替一个人去干一些事,比如说大家熟知的武林外传中就有小六替秀才表白的情节,但是除了替秀才表白,还能在这上面进行一些扩展。接下来我们来了解下代理模式吧。代理模式一般分为静态代理模式和动态代理模式。静态代理如果需要在接口中添加方法,你就必须进行大批量的修改,所以这不太适合需要经常修改需求的场景。而动态代理模式则是利用了Java的反射机制实现的一种。静态代理模式:第一原创 2017-07-26 22:13:10 · 270 阅读 · 0 评论 -
Java设计模式之四:抽象工厂模式
之前的工厂方法模式已经介绍过,如果需要生产的产品种类比较多,那么就需要创建很多的工厂类,例如:衣服有商务型衣服和运动型衣服,鞋子有商务型鞋子和运动型鞋子,按照之前工厂方法模式的设计思路,应该创建四个工厂才行,这样未必就太麻烦了,这里就来介绍一种另外的创建型模式:抽象工厂模式。第一步:创建原创 2017-07-25 23:07:44 · 314 阅读 · 0 评论 -
java设计模式之十一:适配器模式
适配器模式:类似于充电那样,将充电器作为适配器,把220v电压转化为5v电压。220放电接口:interface IChinaD { public int fD();}放电类class ChinaD implements IChinaD { @Override public int fD() { System.out.pri原创 2017-11-02 16:37:40 · 179 阅读 · 0 评论