【反射】Reflect的使用
来源:互联网 发布:java编写九九乘法表 编辑:程序博客网 时间:2024/06/01 09:10
ReflectTest类:
import java.lang.reflect.Field;import java.lang.reflect.Method;public class ReflectTest {public static void main(String[] args) throws InstantiationException, IllegalAccessException {/* * 1.获得要操作的类的对象 */Class c = Person.class;System.out.println(c);/* * 2.调用相应的getXXX()方法获取列表 */Field [] fields = c.getDeclaredFields();for(Object o : fields){System.out.println(o);}/* * 3.使用反射的API来操作这些信息 */System.out.println("---------使用反射前---------------------"); //创建对象时,有两种方法 Person p = (Person)c.newInstance();Person p2 = new Person();//输出信息System.out.println("name:" + p.getName() + " age:" + p.getAge());System.out.println("---------使用反射后---------------------");//分别对属性name和age进行设置,在设置时要注意setAccessible(true)fields[0].setAccessible(true);fields[0].set(p,"tom");fields[1].setAccessible(true);fields[1].set(p, 29);System.out.println("name:" + p.getName() + " age:" + p.getAge());//获取对象的方法Method[] method = c.getDeclaredMethods();for(Object o : method){System.out.println(o);}}}
Perosn类:
public class Person {private String name;private int age;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}
- 【反射】Reflect的使用
- Java的反射reflect使用
- Reflect反射的基础知识
- 反射(reflect)的knowledge
- reflect反射的常用方式
- 反射reflect
- 反射reflect
- 反射Reflect
- 反射Reflect
- Reflect反射
- reflect(反射)
- 反射Reflect
- 反射 Reflect
- reflect(反射)
- reflect--反射
- reflect(反射)
- 反射reflect
- 反射reflect
- Android - LayoutInflater
- CSP编程基础--CryptAPI使用过程中碰到的问题
- Mastering Regular Expression 代码介绍 1 - HTML 格式转换
- 关于单实例模式的认识
- CONTAINING_RECORD
- 【反射】Reflect的使用
- solr 常用UI请求
- Customizing Android ListView Items with Custom ArrayAdapter
- C# char[] 与 string之间的转换
- 传Facebook与HTC合作开发手机 预计明年中发布
- JTAG与ISP区别
- umask 函数
- Android Bander设计与实现 - 设计篇
- openlayers google v3只显示一个marker故障