java 反射机制
来源:互联网 发布:机械结构优化设计 编辑:程序博客网 时间:2024/06/08 11:06
Java反射机制功能进分强大,在java.lang.reflect包提供;
所有的java类均继承了Object类,在Object类中定义了一个getClass()方法,该方法返回一个类型为Class的对象。
注:通过getFields()和getMethods()方法依次获得权限为public的成员变量和方法时,还包含从超类中继承到的成员变量和方法;而通过getDeclaredFields()和getDeclaredMethods()方法只获得在本类中定义的所有成员变量和方法;
访问构造方法:
通过下表一组方法访问构造方法时,将返回Constructor类型的对象或数组。每个Constructor对象代表一个构造方法,利用Constructor对象可以操纵相应的构造方法。getConstructors()getConstructor(Class<?>...parameterTypes)getDeclaredConstructors()getDeclaredConstructor(Class<?>...parameterTypes)如果访问指定的构造方法,需要根据该构造方法的入口参数的类型来访问。如访问一个入口参数依次为String和int型的构造方法可以通过如下两种方法:objectClass.getDeclaredConstructors(String.class, int.class);objectClass.getDeclaredConstructors(new Class[] {String.class, int.class});
访问成员变量:
在通过下列一组方法访问成员变量,将返回Field类型方法或数组。每一个Field对象代表一个成员变量,利用Field可以操纵相应的成员变量:
getFields()
getField(String name)
getDeclaredFields()
getDeclaredField(String name)
如果是访问指定的成员变量,可以通过该成员变量的名称来访问。例如访问一个名为birthday的成员变量:
object.getDeclaredField(“birthday”);
访问成员方法:
在通过下列一组方法访问方法时,将返回Method类型的对象或数组。每个Method对象代表一个方法,利用Method对象可以操纵相应的方法:getMethods()getMethod(String name, Class<?>...parameterTypes)getDeclaredMethods()getDeclaredMethod(String name, Class<?>...parameterTypes)如果是访问指定的方法,需要根据该方法的名称和入口参数的类型来访问。例如访问一个名为print,入口参数类型依次为String和int型的方法,可以通过如下两种方式实现objectClass.getDeclaredMethod("print", String.class, int.class);objectClass.getDeclaredMethod("print", new Class[]{String.class, int.class});
阅读全文
1 0
- 【反射】JAVA反射机制
- 【Java】JAVA反射机制
- Java 反射机制[Field反射]
- Java 反射机制[Method反射]
- Java反射机制笔记-反射机制
- java的反射机制
- Java的反射机制
- java反射机制详解!
- Java反射机制
- Java的反射机制
- java 反射机制--侯捷
- java反射机制
- java反射机制
- [候捷]Java反射机制
- java 反射机制
- java 反射机制初探
- 关于Java反射机制
- java反射机制
- 数据结构4-深度优先搜索和广度优先搜索
- [agc015f]Kenus the Ancient Greek
- JS 轮播图
- 支持向量机(SVM)算法
- iOS 宏定义~ 安全指针
- java 反射机制
- 我的python学习笔记、存储数据
- ssh跳板机使用体验
- swift语言特点
- 大型网站CAP理论和BASE模型
- ERROR 2003 (HY000):Can't connect to MySQL server on 'localhost' (10060)
- python 手记4 〖笨方法学python习题19〗
- 设置树莓派键盘布局错乱
- Halcon标定方式Camera_calibration()摄像机标定(函数详解)