随笔分类 -  JAVA基础

摘要:Cglib是基于类的代理,不需要基于接口,会生成目标对象类型的子对象,所以当需要被代理的类没有继承接口时,就可以使用Cglib代理。 过程如图所示: Cglib有三种类似的方式,下面一一举例,可能比较肤浅: 目标类: 1 /** 2 * @author o_0sky 3 * @date 2019/2 阅读全文
posted @ 2019-02-21 22:30 o_osky 阅读(339) 评论(0) 推荐(0)
摘要:实际开发中,有时候需要对一个类进行功能扩展,但要求变动尽可能地小,扩展性尽可能地强,这时候可以用代理。 ①静态代理,前面也有写,很粗浅,希望有用( 静态代理),如图: ②动态代理,代理类不是静态定义的,是程序动态生成的,代码简洁,且兼顾扩展性,如图: 代码如下: 执行结果如下(调用的sing方法): 阅读全文
posted @ 2019-02-15 23:57 o_osky 阅读(215) 评论(0) 推荐(0)
摘要:Map是我们常用的数据容器,常用的有以下几种遍历方式,代码如下: 1 package Map; 2 3 import java.util.*; 4 5 /** 6 * @author o_0sky 7 * @date 2019/2/15 0:37 8 */ 9 public class MapTes 阅读全文
posted @ 2019-02-15 01:05 o_osky 阅读(225) 评论(0) 推荐(0)
摘要:静态代理的运用场景:在原来的类的基础上进行扩展,与继承类相比,扩展性更强 应用的技术:反射+多态 核心思想: <1>原来的类不允许修改 <2>有扩展需求 <3>继承可以解决问题,但有局限性,只能实现一个类,想实现其他功能不同的类就不行了 解决方法:代理:去创建一个类控制对另一个类的访问 ps:代理类 阅读全文
posted @ 2019-02-12 01:51 o_osky 阅读(344) 评论(0) 推荐(0)