继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【学习打卡】第3天 Java设计模式精讲-Debug方式+内存分析 第十二讲

慕函数9884427
关注TA
已关注
手记 18
粉丝 1
获赞 4

【学习打卡】第3天 Java设计模式精讲-Debug方式+内存分析 第十二讲

课程名称:Java设计模式精讲-Debug方式+内存分析,真正学懂设计模式

课程章节: 适配器模式讲解+Coding+源码解析

主讲老师:Geely

课程内容:

今天学习的内容包括:

什么是适配器模式  适配器模式  优点 缺点  Coding  源码解析 以及在业务上的应用

课程收获:

适配器 设计模式

1.定义

  将一个类的接口转换成客户期望的另一个接口

1.1 特点

  使原本接口不兼容的类可以一起工作

1.2 类型  : 结构型

2.适用场景

   1、以及存在的类,它的方法和需求不匹配时(方法结果相同或相似)

   2、不是软件设计阶段考虑的设计模式,是随着软件维护 由于不同产品 不同厂家造成功能类似而接口不相同情况下的解决方案

3.缺点

  1.适配器编写过程需要全面考虑,可能会增加系统的复杂性

  2.增加系统代码可读的难度

4.优点

   1.能提高类的透明性和复用,现有的类复用但不需要改变

   2.目标类和适配器类解耦 提高程序扩展性

   3.符合开闭原则

5.适配器-扩展

 1.对象适配器

 2.类适配器

6.适配-相关的设计模式

适配器模式和外观模式 两个适配的粒度不同

7.ulm 设计图

http://img.mukewang.com/62ed06560001e7dc10260874.jpg

8.代码如下

package com.zw.design.pattern.creational.structural.adapter.v2;

public class AC220 {
    public int outAc220V(){
        int output=220;
        System.out.println("output = 输出交流电 " + output+" v");
        return output;
    }
}
package com.zw.design.pattern.creational.structural.adapter.v2;

public interface DC5 {
    int outputDC5V();
}

2.适配类

package com.zw.design.pattern.creational.structural.adapter.v2;

public class PowerAdapter implements DC5 {
    private AC220 ac220=new AC220();
    @Override
    public int outputDC5V() {
        int abdinput=ac220.outAc220V();
        //变压器
        int output=abdinput/44;
        System.out.println("output = 输出交流电 " + abdinput+" v"+" 最后输出交流电"+output);
        return output;
    }
}

3.测试类

package com.zw.design.pattern.creational.structural.adapter.v2;

public class Test {
    public static void main(String[] args) {
        DC5 dc5=new PowerAdapter();
        dc5.outputDC5V();
    }
}

框架源码解析

在spring框架当中Aop包下 这个接口AdvisorAdapter 下实现类MethodBeforeAdviceAdapter 这个是增强方法运行之前的

http://img2.mukewang.com/62ed066600011ba718440950.jpg

在SpringMvc  当中使用适配器设计模式应用HandlerAdapter接口 比如我们经常使用Controller就是SimpleControllerHandlerAdapter的实现

http://img2.mukewang.com/62ed06730001e93a17620906.jpg

今天学习课程共用了45 分钟,重新学习一下设计模式 更加清楚知道适配器模式的应用以及如何在自己项目当中去使用它  大家一起加油 💪🏻




打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP