黑马程序员-JAVA反射机制
来源:互联网 发布:旺道网站排名优化 编辑:程序博客网 时间:2024/06/08 08:34
================ ASP.Net +Android+IOS开发、.Net培训、 期待与您交流! ================
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
Class类是Reflection API中的核心类,它有以下方法。
getName():获得类的完整名字。
getFields():获得类的public类型的属性。
getDeclaredFields():获得类的所有属性。
getMethods():获得类的public类型的方法。
getDeclaredMethods():获得类的所有方法。
getMethod(String name, Class[] parameterTypes):获得类的特定方法,name 参
数指定方法的名字,parameterTypes参数指定方法的参数类型。
getConstrutors():获得类的public类型的构造方法。
getConstrutor(Class[] parameterTypes):获得类的特定构造方法,parameterTypes参数指定构造方法的参数类型。
定义Person类
public class Person {private String name="a";private int age=3;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;}public Person(String name, int age) {super();this.name = name;this.age = age;}}通过class.forName来反射:
import java.lang.reflect.Field;import java.lang.reflect.Method;public class test01 {public static void main(String[] args) throws SecurityException, NoSuchFieldException, ClassNotFoundException {// TODO Auto-generated method stubClass<?> clazz=Class.forName("Person");Field[] f=clazz.getFields();for(int i=0;i<f.length;i++){System.out.println(f[i].toString());}Method methods[] = clazz.getDeclaredMethods();for (int i = 0; i < methods.length; i++)System.out.println(methods[i].toString()); }}
输出结果:
public java.lang.String Person.getName()public void Person.setName(java.lang.String)public int Person.getAge()public void Person.setAge(int)
================ ASP.Net +Android+IOS开发、.Net培训、 期待与您交流! ================
0 0
- 黑马程序员-Java反射机制
- 黑马程序员-java反射机制
- 黑马程序员-Java反射机制
- 黑马程序员-JAVA反射机制
- 黑马程序员-Java反射机制
- 黑马程序员-JAVA反射机制
- 黑马程序员 java反射机制
- 黑马程序员---Java反射机制
- 【黑马程序员】Java反射机制
- 黑马程序员-Java反射机制
- 黑马程序员--Java 反射机制
- 黑马程序员-Java反射机制
- 黑马程序员---JAVA反射机制
- 《黑马程序员》Java 反射机制
- 黑马程序员-Java反射机制
- 黑马程序员-------- 浅谈JAVA反射机制
- 黑马程序员-加强版-java反射机制
- 黑马程序员-java 高新技术 反射机制
- 什么是javabean,以及与sevlet的区别
- 嵌入式测试相关书籍
- 关于BITMAP位图选入DC
- C#做服务器,Android做客户端,完成Socket通信
- java&数据库字符串
- 黑马程序员-JAVA反射机制
- IDA* UVA 1505 - Flood-it!
- ssl运行机制中,为什么不直接采用pms作为会话密钥
- VC6写的 MemoryInfo
- byte[]和文件FileStream相互转化
- OpenGL4.x学习之搭建基于Qt和OpenGL4.x的框架
- 调优的基本选项
- JSP是什么?
- 新生活的开始