反射作用:
java可以动态的加载未知的对象,临时生成字节码进行加载使用
反射原理基础:
JAVA程序,一次编译,到处运行,原因在于,java的源代码会编译成.class文件字节码,只要有JVM就可以运行
第一步javac编译器编译成相应的字节码.class文件
第二步java字节码由JVM执行解释给目标计算机
第三步目标计算机将结果呈现给我计算机用户
反射原理实现:操作得就是.class文件
1.首先加载相应类的字节码
2..class文件在被类加载器后,JVM为每个类都会生成一个java.lang.Class<T>这个类的实例
3.随后解剖(反射reflect)出字节码中的构造函数、方法以及字段,即通过Class对象里维护着该类的所有Method,Field,Constructor
4.通过该Class对象获取到构造方法,成员变量,成员方法和接口等信息
性能与安全
这里并没有代码,原因如下:
1.关于代码展示百度一大把,但都是解决代码实现
2.我主要是想整理了自己看的明白
3.性能与安全网上也是由很多