java反射和动态代理

java反射

反射是程序运行时,通过反射直接操作对象或者类。获取类声明的属性和方法,调用方法或者构造对象,设置修改类的定义(包括类的成员访问限制)。说白了就是利用java反射机制我们可以加载一个运行时才得知名称的class,获悉其构造方法,并生成其对象实体,能对其fields设值唤起method。会消耗一定的系统资源,因此如果不要动态创建一个对象,就不需要用反射,另外反射调用方法时可以忽略权限检查,因此可能破坏封装性导致安全问题。

动态代理

是一种方便运行时动态构建代理、动态处理代理放大调用的机制。代理可以看做是对调用目标的一个包装,我们对目标代码的调用不是直接发生的,而是通过代理完成。可以通过代理让调用者与实现者之间解耦。动态代理不关心代理谁,而是在运行阶段才指定代理代理哪个对象。如果自己写代理类就是静态代理

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容