什么是工厂模式、代理模式?

工厂模式 :实例化对象,用工厂方法代替new操作的一种模式。
代理模式 :

  1. 代理 :分为静态代理和动态代理;现有对象不能满足正常的开发需求,需要有一个能够代替现有对象提供服务
    动态代理 :编译时代理类不存在;运行时动态生成的代理对象;
    静态代理 :编译时代理类已经存在;静态代理对于开发没有意义;
  2. 被代理类/对象/方法:只有核心功能;
  3. 增强处理 :公共处理、额外功能、建议、通知;很多地方都需要的功能;比如日志记录、事务处理、效率分析、性能分析;
  4. 代理类/对象/方法 :核心功能+增强处理;
  5. 切入点:需要增强处理的方法,做一个标记;
  6. 织入/编织:增强处理,添加到切入点位置的这个过程;
  7. 切面:增强处理在切入点位置织入后,形成一个几个概念;

AOP:面向切面编程
以横切的思想,在运行的过程中,把摸一个功能添加在指定的位置;
定义好要添加的功能《增强》,定义好需要功能的地方《切入点》; 在运行的过程中把功能加入到需要的地方;
AOP是在OOP的基础上完成的,是对OOP的补充;
AOP的应用:
1. 做共工处理;比如日志记录、事务控制,减少代码冗余;
2. 在不修改原有代码的基础上,做功能扩展
AOP通过动态代理实现,面向接口编程,使用的是JDK动态代理
DI : 依赖注入:
① 设值注入:反射加载无参构造方法,set方法进行赋值;
② 构造注入:反射加载带参数构造方法,通过形参进行赋值;
③ 自动装配:反射加载无参构造方法,set方法进行赋值;按名字装配,按类型装配

什么是工厂模式、代理模式?相关推荐

  1. 设计模式(初探工厂与代理模式)——学习记录

    0 设计模式 一种思维,一种态度,一种进步 1 创建型模式:省去new的过程 单例模式 工厂模式 抽象工厂模式 建造者模式 原型模式. 2 结构型模式: 适配器模式 桥接模式 装饰模式 组合模式 外观 ...

  2. 设计模式、原则、饿汉式单例模式、抽象工厂、代理模式、观察者模式、模板方法模式使用场景

    设计模式 ​ 对各种面向对象方法的一种总结.前辈们遇到了好多设计问题,然后利用面向对象解决了.然后他们把解决方案汇总起来,形成了20多种设计模式.它可以有效的帮助我们利用面向对象,来提高代码的复用性. ...

  3. 设计模式 — 结构型模式 — 代理模式

    目录 文章目录 目录 代理模式 应用场景 代码示例 代理模式 代理模式,为其他对象提供一种代理,以此控制一个对象的访问方式.在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户 ...

  4. C++设计模式 | 四种结构型模式——代理模式、外观模式、适配器模式、装饰模式...

    结构型模式:让类和类进行组合,获得更大的结构. 代理模式 代理模式的定义: 为其他对象提供一种代理以控制对这个对象的访问.在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端 ...

  5. Java接口学习(接口的使用、简单工厂、代理模式、接口和抽象类的区别)

    前言引入 官方解释:Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能). 我的 ...

  6. Java—接口(工厂模式代理模式)

    程序1:简单的接口功能 package com.liaojianya.chapter2; /*** 编写程序实现一个usb接口,定义设备来使用这个接口,从而计算机可以调用具有usb接口的设备.* @a ...

  7. 工厂模式 代理模式 深入理解

    OOP七大原则 开闭原则:对扩展开放,对修改关闭 里氏替换原则:继承必须确保超类所拥有的性质在子类中仍然成立 依赖倒置原则:面向接口编程,不要面向实现编程 单一职责原则:控制类的粒度大小,将对象解耦, ...

  8. 单例模式 工厂模式 代理模式 适配器模式

    单例模式 概念: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必 ...

  9. 《设计模式详解》结构型模式 - 代理模式

    代理模式 5.1 代理模式 5.1.1 概述 5.1.2 结构 5.1.3 静态代理 5.1.4 动态代理 JDK 动态代理 JDK 动态代理分析 CGLIB 动态代理 5.1.5 三种代理的对比 5 ...

  10. 设计模式-结构型模式-代理模式proxy

    代理模式 三个角色:抽象主题  具体主题 代理类 ( 抽象主题约束) 代理主要是 给某个对象提供一个代理以控制对该对象的访问.  类似于   中介 静态代理 :直接提供代理类,实现与具体主题(被代理类 ...

最新文章

  1. Nsight Compute Profilier 分析
  2. MAC下安装多版本JDK和切换几种方式
  3. 【Python学习】 - anaconda中spyder的常用快捷键总结
  4. ntp服务器同步时间详细配置
  5. 二季度美国新增2.4吉瓦太阳能容量
  6. Maven公共仓库/镜像站收集及使用技巧
  7. python keyboard库_python库 pywinio虚拟键盘使用
  8. opencv中的resize函数实现图像插值缩放
  9. iOS HTML5的JS交互
  10. 韩语在线翻译图片识别_3个OCR文字识别工具,最后一个许多人都不知道!
  11. 当“长期主义”遇上“流量生意”,轻松筹与水滴筹谁更胜一筹?
  12. 2017-2018 ACM-ICPC, Asia Daejeon Regional Contest:Gym 101667C
  13. win2019微软更新服务器,将 Windows Server 2016 升级到 Windows Server 2019
  14. SQLServer 自定义函数 日期计算月初/月末/年初/年末/季初/季末
  15. lua对接bmob数据库
  16. 什么样的人适合学习嵌入式开发
  17. Android开发——程序锁的实现(可用于开发钓鱼登录界面)
  18. RuntimeError: No such operator aten::cudnn_convolution_backward_weight
  19. promise的前世来生
  20. 【Linux】限制进程的CPU使用率

热门文章

  1. 产品配件清单查询示例.sql
  2. RMAN准备目录数据库
  3. 如何解决Could not load file or assembly ‘xxx.yyy, version=1.0.0.0, culture=neutral, public
  4. android编译集成dialer应用,Android Dialer应用程序
  5. java绘制杨辉三角
  6. 元宇宙的六大核心技术
  7. Reason given for failure: CSRF cookie not set.
  8. 关于公钥、私钥和 CA 认证的小故事
  9. vue2封装Affix组件实现固定
  10. Python进行远程视频监控