学习4
2016-01-06 21:38
106 查看
今天学习了新的知识类的加载和反射,感觉理解上有点困难,调用方法调用什么的容易绕晕,私下里还是需要多多的练习啊
获得Class对象的方式主要有以下三种:
方式一:如果一个类的实例已经得到,你可以使用
Class c = 对象名.getClass();
例: TextField t = new TextField();
Class c = t.getClass();
Class s = c.getSuperclass();
方式二:如果你在编译期知道类的名字,你可以使用如下的方法 Class c = JButton.class;
或者 Class c = Integer.TYPE;
方式三:如果类名在编译期不知道, 但是在运行期可以获得, 你可以使用下面的方法
Class c = Class.forName(strg);
反射机制中为获取以上三个部分分别提供了常用类及方法。
Filed类:提供有关类或接口的属性信息。
Constructor类:提供关于类的单个构造方法的信息以及对它的访问权限。
Method类:提供关于类或接口上单独某个方法(以及如何访问该方法)的信息。
Filed类常用方法:
Field getField(String name) 获得指定的公共字段
Field[] getFields() 获得类的所有公共字段
Field getDeclaredField(String name) 获得指定的字段
Field[] getDeclaredFields() 获得类声明的所有字段
Constructor类常用方法:
Constructor getConstructor(Class[] params) 获得使用特殊的参数类型 的公共构造函数
Constructor[] getConstructors()
获得类的所有公共构造函数
Constructor getDeclaredConstructor(Class[] params)
获得使用特定参数类型的构造函数(与访问级别无关)
Constructor[] getDeclaredConstructors()
获得类的所有构造函数(与访问级别无关)
Method类常用方法:
Method getMethod(String name, Class[] params)
使用特定的参数类型,获得命名的公共方法
Method[] getMethods()
获得类的所有公共方法
Method getDeclaredMethod(String name, Class[] params)使用特定的参数 类型,获得类声明的命名的方法
Method[] getDeclaredMethods()
获得类声明的所有方法
利用反射技术而进行的常用操作主要有三个:
通过Constructor创建对象
通过Method执行方法
通过Field为属性赋值取值
获得Class对象的方式主要有以下三种:
方式一:如果一个类的实例已经得到,你可以使用
Class c = 对象名.getClass();
例: TextField t = new TextField();
Class c = t.getClass();
Class s = c.getSuperclass();
方式二:如果你在编译期知道类的名字,你可以使用如下的方法 Class c = JButton.class;
或者 Class c = Integer.TYPE;
方式三:如果类名在编译期不知道, 但是在运行期可以获得, 你可以使用下面的方法
Class c = Class.forName(strg);
反射机制中为获取以上三个部分分别提供了常用类及方法。
Filed类:提供有关类或接口的属性信息。
Constructor类:提供关于类的单个构造方法的信息以及对它的访问权限。
Method类:提供关于类或接口上单独某个方法(以及如何访问该方法)的信息。
Filed类常用方法:
Field getField(String name) 获得指定的公共字段
Field[] getFields() 获得类的所有公共字段
Field getDeclaredField(String name) 获得指定的字段
Field[] getDeclaredFields() 获得类声明的所有字段
Constructor类常用方法:
Constructor getConstructor(Class[] params) 获得使用特殊的参数类型 的公共构造函数
Constructor[] getConstructors()
获得类的所有公共构造函数
Constructor getDeclaredConstructor(Class[] params)
获得使用特定参数类型的构造函数(与访问级别无关)
Constructor[] getDeclaredConstructors()
获得类的所有构造函数(与访问级别无关)
Method类常用方法:
Method getMethod(String name, Class[] params)
使用特定的参数类型,获得命名的公共方法
Method[] getMethods()
获得类的所有公共方法
Method getDeclaredMethod(String name, Class[] params)使用特定的参数 类型,获得类声明的命名的方法
Method[] getDeclaredMethods()
获得类声明的所有方法
利用反射技术而进行的常用操作主要有三个:
通过Constructor创建对象
通过Method执行方法
通过Field为属性赋值取值
相关文章推荐
- RESTful架构2--架构详解
- Quartz Scheduler(2.2.1) - Usage of CronTriggers
- 字典树两种写法....
- 13天
- 《Spring实战》学习笔记-第二章:装配Bean
- 时间复杂度和空间复杂度(2)
- 155 Min Stack
- ubuntu命令行输出铃声
- MySQL5.6.12 Waiting for commit lock导致从库hang住的问题剖析
- C预备知识_001
- 关于android应用闪屏的几种情况
- 简易的RestClient代码
- MySQL Proxy
- 【iCore3 双核心板】例程二十七:DMA LAN实验——高速数据传输测速
- JSON库之性能比较:JSON.simple VS GSON VS Jackson VS JSONP
- TLD算法资源总结
- Linux用ls和grep统计文件个数
- nandflash简介(二)
- 【C/C++学院】0830-兰不达表达式/STL算法-操作数据
- 散列表(HashTable)