Java教程

Java反射机制

本文主要是介绍Java反射机制,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Java反射机制概述

静态 VS 动态语言

  • 静态语言:Java、C、C++
  sout("1+2");  //结果就是1+2
  • 动态语言:C#、JavaScript、PHP、python
  function a(){
    var x = "var b=1; var c=2; alert(b+c)";
    eval(x); 
}
  • java可以利用反射机制获得类似动态语言的特性

反射(Reflection)

  • 反射机制允许程序在执行期间借助反射API取得任何类的内部信息,能直接操作内部属性及方法。加载完类之后,堆内存中就产生一个Class类型的对象,该对象包含了类的结构信息。该对象就像一面镜子,透过这个镜子可以看到类的结构,所以,称之为 反射。

    Class c = Class.forName("类名");

  • 功能:获取泛型信息、运行时处理注解、生成动态代理

理解class类并获取class实例

类的加载与ClassLoader

运行时创建类的对象

获取运行时类的结构

调用运行时类的结构


这篇关于Java反射机制的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!