java
大明湖畔夏雨荷
java菜鸟
展开
-
String-StringBuffer与StringBuilder之间区别
最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBuilder的东西,现在整理一下。 关于这三个类在字符串处理中的位置不言而喻,那么他们到底有什么优缺点,到底什么时候该用谁呢?下面我们从以下几点说明一下 1.三者在执行速度方面的比较:StringBuilder > StringBuffer > String翻译 2017-11-15 12:12:33 · 166 阅读 · 0 评论 -
静态代理
代理模式定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用, 其特征是代理类与委托类有同样的接口 静态代理: 就是我们打包后项目中已经存在的.class文件(这个文件的源码是有我们自己编写的/或者提供的java文件) 动态代理: 程序在运行时通过java的反射机制动态创建而成原创 2018-01-23 16:38:36 · 338 阅读 · 0 评论 -
动态代理-JDK动态代理
代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。为了保持行为的一致性,代理类和委托类通常会实现相同的接口,所以在访问者看来两者没有丝毫的区别。通过代理类这中间一层,能有效控制对委托类对象的直接访问,也可以很好地隐藏和保护委托类对象,同时也为实施不同控制策略预留了空间,从而在设计原创 2018-01-25 16:02:07 · 224 阅读 · 0 评论 -
动态代理-cglib
一 动态代理-cglib 程序在运行期间,为被代理对象生成代理对象,并且没有静态代理,和jdk动态代理实现公共接口的苛刻条件,基于cglib的动态代理是在运行期间为被代理对象生成一个子类作为代理对象,并重写了父类的所有方法(由于是重写的父类方法,父类final所修饰的的方法将不会被 重写使用),代理类中的所有方都只要被调用都将会被拦截,当方法被拦截后增强器会将此类的信息及方法发参数等信息发送原创 2018-01-27 12:18:31 · 262 阅读 · 0 评论