java 反射机制
2009-02-25 20:21
246 查看
Java 反射机制是指Java程序可以在执行期载入,探知,使用编译期间完全未知的classes.这句话可能有点难以理解,我们可以通过一个例子来看。在Java程序中我们经常会用到这样一条语句来创建一个对象。Date date = new Date();在这条语句中date的类型(Java.util.Date)在编译时已经确定。那么,提示有没有办法使我们把对象类型的确定时间由编译转到运行,答案是肯定的。这就是Java反射机制所提供的便利。而且它不单单可以生成对象还可以获取Field,对Field设值,及调用方法等。
谈及Java反射机制就一定要知道一个名为“Class”的类,它是Java反射机制的基础。“Class”和其它类一样继承于Object类,它的实例对象用来描述Java运行时的一种类型,接口,或者原始类型(比如int)。“Class”的实例要由JVM创建,它没有公用的构造方法。下面我们来看一下如何获得"Class"类实例。
主要有三种方法。
一、通过Class类的静态方法forName获取 Class a = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
二、通过class属性获得Class a = String.class;Class a= int.class;
三、通过实例变量的getClass方法获得。String s = ""; Class a = s.getClass();如上所示实例对象cla就是对String类型的描述,通过它我们就可以创建一个String实例,并调用其中的方法。
谈及Java反射机制就一定要知道一个名为“Class”的类,它是Java反射机制的基础。“Class”和其它类一样继承于Object类,它的实例对象用来描述Java运行时的一种类型,接口,或者原始类型(比如int)。“Class”的实例要由JVM创建,它没有公用的构造方法。下面我们来看一下如何获得"Class"类实例。
主要有三种方法。
一、通过Class类的静态方法forName获取 Class a = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
二、通过class属性获得Class a = String.class;Class a= int.class;
三、通过实例变量的getClass方法获得。String s = ""; Class a = s.getClass();如上所示实例对象cla就是对String类型的描述,通过它我们就可以创建一个String实例,并调用其中的方法。
相关文章推荐
- Java的RTTI和反射机制代码分析
- JAVA中的反射机制
- Java学习笔记 --- 反射机制
- java 利用反射机制创建类
- Java方法的动态调用(采用反射机制)
- java 反射机制构建JDBC查询方法
- java的反射机制Reflection(重点、难点)
- java高级开发学习之--反射机制(1)
- java类反射机制
- Java动态代理类(包括客户端服务端使用反射机制来代理的)
- java的反射机制
- Java之反射机制
- 黑马程序员——JAVA学习笔记——反射机制(上)
- Java 学习之反射机制“解刨”分解类,并获取内容!
- 深入理解Java:类加载机制及反射
- 利用Java的反射与代理机制实现AOP
- JAVA进阶4.13——反射机制
- 关于Java反射机制
- 黑马程序员 java学习笔记 Day11:反射机制详解
- 黑马程序员——JAVA学习笔记——反射机制(下)