
java
太阳石笑笑
这个作者很懒,什么都没留下…
展开
-
趣说 反射与注解系列性能分析
测试不使用反射,使用反射,还有关闭检测时候使用反射方式,运行效率,先看小demo: package com.company; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class test9 { //普通方式调用 public static void test01() { User user = new User();原创 2020-08-18 09:04:21 · 206 阅读 · 0 评论 -
趣说 java反射之动态创建对象执行方法
在实际的操作中,获取类的信息的操作代码,不会经常开发 我们只是需要熟悉java.lang.reflect包的作用,反射机制,如何取得属性,方法,构造器名称,修饰符等~ 有了class对象,能做什么 可以创建类的对象:调用Class对象的newInstance()方法 前提是: 类必须有一个无参数的构造器 类的构造器的访问权限要足够 如果没有无参构造器,也可以创建对象,比如: 通过Class类的getDeclaredConstructor(Class …parameterTypes)取得本类的指定形参类型的构原创 2020-08-13 09:06:23 · 812 阅读 · 0 评论 -
趣讲 java反射之创建运行时类的对象
可以通过反射,获取运行时类的完整结构 Field、Method、Constructor、Superclass、interface、Annotation 具体来说可以是: 实现类的全部接口 所继承的父类 全部的构造器 全部的方法 全部的Field 注解 package com.company; import sun.plugin2.message.GetNameSpaceMessage; import java.lang.reflect.Constructor; import java.lang.refl原创 2020-08-12 23:58:56 · 910 阅读 · 0 评论 -
趣讲 java反射之类加载器(图文并茂)
类加载器的作用: 将class文件字节码内容加载到内存中,并将这些静态数据转化成方法区的运行时数据结构,然后在堆中生成一个代表这个类的java.lang.Class对象,作为方法区中数据的访问入口。 类缓存:标准的javaSE类加载器可以按照要求查找类,但是一旦某个类被加载到类加载器中,将会维持加载一段时间,不过JVM的垃圾回收机制可以回收这些Class对象 扩展类加载器是加载这块的 根加载器是加载这块的 画个流程图了解一下吧 类加载器的作用: 类加载器是用来把类装载到内存中的,JVM规范定义了如下类原创 2020-08-12 22:57:06 · 237 阅读 · 0 评论 -
java反射之类的初始化
什么时候发生类的初始化呢? 当类主动引用的时候,一定会发生类的初始化 当虚拟机启动,先初始化main方法所在的类 new一个类的对象 调用类的静态成员(除了final常量)和静态方法 使用java.lang.reflect包的方法对类进行反射调用 初始化一个类,如果父类没有初始化,会先初始化它的父类 类的被动引用,不会发生类的初始化 当访问一个静态域时,只有真正声明这个域的类才会被初始化,比如:当通过子类引用父类的静态变量时候,不会导致子类初始化 通过数据定义类的引用,不会触发类的初始化 引用常量不会触发类原创 2020-08-12 09:02:23 · 578 阅读 · 0 评论 -
java反射、注解、序列化详解二
好了,我们开始这个系列详解二的学习。 先介绍一下Class类的常用方法 static ClassforName(String name) 返回指定类名name的Class对象 Object newInstance() 调用缺省构造函数,返回class对象的一个实例 getName() 返回此Class对象所表示的实体(类,接口,数组类或者是void)的名称 Class getSuperClass()原创 2020-08-07 09:00:13 · 178 阅读 · 0 评论