注解与反射
文章平均质量分 51
yuan_boss
网络安全领域知识博主
展开
-
8反射操作注解
使用反射操作注解文章目录使用反射操作注解1.基本思路2.代码测试:了解ORM(Object relationship Mapping)对象关系映射1.类和表结构对应2.属性和字段对应3.对象和记录对应利用注解和反射完成类和表结构的映射关系1.基本思路1.通过反射获得包含注解的Class类,然后调用Class类的方法getAnnotations()可以获得类上的所有注解,如下代码: Annotation[] annotations = c1.getAnnotations();原创 2021-07-17 09:37:24 · 95 阅读 · 0 评论 -
7反射获取泛型信息
通过反射获取泛型信息测试代码//通过反射获取泛型public class Test11 { public void test01(Map<String,User> map,List<User> list){ System.out.println("test01"); } public Map<String,User> test02(){ System.out.println("test02");原创 2021-07-17 09:36:27 · 105 阅读 · 0 评论 -
6反射关闭检测性能调优分析
反射关闭检测性能调优分析文章目录反射关闭检测性能调优分析测试代码说明反射效率低输出结果反射比一般方式效率更低,因为1.Method#invoke 方法会对参数做封装和解封操作2.需要检查方法可见性:反射时每次调用都必须检查方法的可见性3.需要校验参数:反射时也必须检查每个实际参数与形式参数的类型匹配性4.反射方法难以内联:Method#invoke 就像是个独木桥一样,各处的反射调用都要挤过去,在调用点上收集到的类型信息就会很乱,影响内联程序的判断,使得 Method.invoke() 自身难以原创 2021-07-17 08:28:20 · 129 阅读 · 0 评论 -
5反射之对象创建与属性操作
反射之对象创建与属性操作文章目录反射之对象创建与属性操作如何获取运行时类的完整结构代码测试动态创建对象的执行方法通过反射创建对象通过反射操作方法或属性操作方法:操作属性:setAccessible的使用测试代码如何获取运行时类的完整结构先获取一个类的Class类对象,再通过这个对象的方法来获取,可以获取的结构有Field,Method,Constructor等方法如下:获取类的名字c1.getName(): 包名+类名c1.getSimpleName(): 类名获取类的属性c1.getFi原创 2021-07-16 23:55:30 · 158 阅读 · 0 评论 -
4类加载器
类加载器文章目录类加载器类加载器有哪些?如何获取类加载器?如何获取系统类加载器可以加载的路径?测试代码:类加载器有哪些?1.系统类加载器2.扩展类加载器3.根加载器了(引导加载器,由C/C++编写)扩展类加载器为系统类加载器的父类,根加载器为扩展类加载器的父类,其中我们运行程序时使用的类加载器的系统类加载器,根加载器是JVM本身自带的类加载器,JVM无法直接获取如何获取类加载器?核心代码:获取系统类加载器ClassLoader systemClassLoader = ClassLoade原创 2021-07-16 23:54:25 · 173 阅读 · 0 评论 -
3类加载内存分析
类加载内存分析文章目录类加载内存分析类的加载过程代码测试:Class 对象是如何形成的?什么时候会发生类的初始化?代码测试类的加载过程在程序要主动使用一个类的时候,如果该类还没被加载到内存中,系统会通过三个步骤来对该类进行初始化:1.类的加载(Load):将类的Class文件读入内存,并为之创建一个java.lang.Class对象。此过程由类加载器完成2.类的链接(Link):将类的二进制数据合并到JRE中3.类的初始化(Initialize):JVM负责对类进行初始化代码测试:publ原创 2021-07-16 23:53:39 · 72 阅读 · 1 评论 -
Java反射
反射文章目录反射什么是反射?反射优点与缺点优点:缺点:与反射相关的主要API一个类在内存中只有一个Class类对象代码测试Class类的创建方式有哪些代码测试哪些类型可以有Class类对象?代码测试:什么是反射? Reflection(反射)是Java被视为动态语言的关键(因为反射Java从原来的静态语言转变为动态语言),反射机制允许程序在执行期借助Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法 加载完类之后,在堆内存的方法区中就产生了Class类型的原创 2021-07-16 23:50:20 · 42 阅读 · 0 评论 -
Java注解系列
注解文章目录注解什么是注解?注解在哪使用?内置注解代码测试元注解元注解作用元注解的类型自定义注解如何自定义注解?代码测试什么是注解?注解是可以被程序(比如:编译器等)解读的,和注释的区别就是注释不可以被程序解读内置注解:@SuppressWarnings: 用来抑制编译时的警告信息,(如果方法未使用方法名将会变为灰色,这就是警告)@Deprecated:不推荐使用,通常是因为很危险或者存在更好的方式@Override:表示一个方法声明打算重写父类的一个方法注解在哪使用?Annotatio原创 2021-07-16 11:26:00 · 55 阅读 · 0 评论