Java实现反射学习函数的应用

Java实现反射学习函数的应用   所谓反射,可以理解为在运行时期获取对象类型信息的操作。传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更

Java实现反射学习函数的应用 所谓反射,可以理解为在运行时期获取对象类型信息的操作。 传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反 射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有 可移植性的代码。严格地说,反射并非编程语言的特性,因为在任 何一种语言都可以实现反射机制,但是如果编程语言本身支持反 射,那么反射的实现就会方便很多。 我们知道在Java中一切都是对象,我们一般所使用的对象都直 接或间接继承自Object类。Object类中包含一个方法名叫 getClass,利用这个方法就可以获得一个实例的类型类。类型类指 的是代表一个类型的类,因为一切皆是对象,类型也不例外,在 Java使用类型类来表示一个类型。所有的类型类都是Class类的实 例。例如,有如下一段代码: Aa =new A(); if(a.getClass()==A.class) System.out.println("equal"); else System.out.println("unequal"); 结果就是打印出 “equal”。 可以看到,对象a是A的一个实例,A某一个类,在if语句中 使用a.getClass()返回的结果正是A的类型类,在Java中表示一 个特定类型的类型类可以用“类型.class”的方式获得,因为 a.getClass()获得是A的类型类,也就是A.class,因此上面的代 码执行的结果就是打印出 “equal”。特别注意的是,类型类是一 一对应的,父类的类型类和子类的类型类是不同的,因此,假设A 是B的子类,那么如下的代码将得到 “unequal”的输出:

腾讯文库Java实现反射学习函数的应用