反射
c_o_d_e_
写一个博客就一定要掌握这个知识!
展开
-
Java 设计模式 - 动态代理模式
代理模式的定义:给某一个对象提供一个代理或占位符,并由代理对象来控制对原对象的访问代理模式通常分为静态代理模式和动态代理模式。简单来理解代理模式,其实就是客户端不直接对一个对象进行操作,而是将这些操作放在一个代理类中,由代理类完成操作,客户端只负责与代理类的交互即可。这样做一是可以提高代码的安全性、而是能够降低耦合度。代理模式通常由三个角色组成Subject:抽象主题角色 Proxy:代理主题角色 RealSubject:真实主题角色由于静态代理模式比较简单,后面再补上,这里先讲下.原创 2020-11-16 21:39:10 · 206 阅读 · 0 评论 -
ClassLoader简单理解-记录
部分内容参考至:https://www.jianshu.com/p/554c138ca0f5很多时候在需要使用类的反射来处理问题时,都会遇到ClassLoader,但只知道这个是类加载器,却不知道有啥用,从哪来的。特此记录一下。首先看定义,java通常有三种系统类加载器,其功能也各不相同,同时也支持自定义类加载器启动类加载器(Bootstrap ClassLoader): 这个类加载器负责将\lib目录下的类库加载到虚拟机内存中,用来加载java的核心库,此类加载器并不继承于ja..原创 2020-11-16 17:55:57 · 144 阅读 · 0 评论 -
Java 通过注解和反射 实现模拟 Hibernate Validator验证框架对实体对象的字段验证功能
需求: 1实现对字段的非空校验 2实现对邮箱的正则验证 3实现对年龄字段的未成年判断输出: 若字段为空则打印注解传递的message 若邮箱格式正则验证不通过则输出邮箱格式错误 若年龄小于18则打印注解传递的message1 创建一个实体类(getter&&setter略)【下面的所有文件都在同一个包中】public class User { @NotNull() String userid;...原创 2020-07-06 20:40:28 · 388 阅读 · 0 评论 -
Java 通过反射实现一个“半成品框架”
反射是为了解决在运行期,对某个实例一无所知的情况下,如何调用其方法。利用java的反射机制可以很方便的对一个类进行各种操作,也是一个“框架”所依赖的核心功能之一。下面利用反射来完成一个“基础框架“的搭建,这个框架可以根据配置文件中配置的类路径去操作对应的类,那么每次运行就不需要修改java程序,只需要修改配置文件即可。框架功能:通过用户在配置文件设置的姓名和年龄来判断用户是否成年。1.创建一个用户类User,放在包reflex.FrameDemo下(简洁起见,就没有添加getter和s...原创 2020-07-05 18:58:52 · 257 阅读 · 0 评论