设计模式
文章平均质量分 92
babylove_BaLe
不负勇往。
展开
-
JDK动态代理的实现原理浅析
JDK动态代理简介 什么是JDK动态代理? 先看看代理的概念——代理:为其他对象提供一种代理以控制对这个对象的访问。 代理在生活中很常见,比如买火车票可以不去火车站,而是通过代售点;想要逃课了,就让同学代签到等等。 说白了,就是可以通过代理来完成目标事件。(自我理解) 不同于静态代理直接采用编码的方式实现,JDK动态代理是利用反射机制在运行时创建代理类,进而调用相应的方法。 J...原创 2018-06-27 14:37:16 · 518 阅读 · 0 评论 -
浅析Cglib动态代理
介绍 我们知道JDK动态代理只能代理实现了接口的类,没有实现接口的类是无法通过JDK来代理的。 Cglib是针对类来实现代理的,它的原理是对指定的目标类生成一个子类,这个子类覆盖目标类的方法并在其中实现方法的增强。因为采用了继承和重写,因此不能对final的类、final方法进行代理。 Cglib底层其实是借助了ASM这个非常强大的Java字节码生成框架,它可以在运行时对字节码进行修改或...原创 2018-07-22 10:40:16 · 620 阅读 · 0 评论 -
适配器模式
定义 将一个类的接口转换为另一个接口,以满足特定场景的需要。 举个栗子,比如三孔插头通过一个转换头转换为两孔插头;比如通过转接线将普通耳机接口转换为苹果方孔耳机接口等。 适配器模式允许通常因为接口不兼容而不能在一起工作的类相互配合完成工作。 适配器模式类图 可以看到适配器模式包含以下角色: Target:目标接口,即用户所需的接口。 Adaptee:适配者类,即被适配的角色,是一个已经存在的接...原创 2019-01-05 21:50:32 · 408 阅读 · 1 评论