JAVA的内省机制(introspector)与反射机制(reflection)
来源:互联网 发布:京东和淘宝买吉他 编辑:程序博客网 时间:2024/06/15 08:50
相对而言,反射比内省更容易理解一点。用一句比较白的话来概括,反射就是让你可以通过名称来得到对象 ( 类,属性,方法 ) 的技术,这种技术比内省机制使用范围更广泛。例如我们可以通过类名来生成一个类的实例;知道了方法名,就可以调用这个方法;知道了属性名就可以访问这个属性的值。 内省是 Java 语言对 Bean 类属性、事件的一种缺省处理方法。例如类 A 中有属性 name, 那我们可以通过 getName,setName 来得到其值或者设置新的值。通过 getName/setName 来访问 name 属性,这就是默认的规则。 Java 中提供了一套 API 用来访问某个属性的 getter/setter 方法,通过这些 API 可以使你不需要了解这个规则(但你最好还是要搞清楚),这些 API 存放于包 java.beans 中。
一般的做法是通过类 Introspector 来获取某个对象的 BeanInfo 信息,然后通过 BeanInfo 来获取属性的描述器( PropertyDescriptor ),通过这个属性描述器就可以获取某个属性对应的 getter/setter 方法,然后我们就可以通过反射机制来调用这些方法。下面我们来看一个例子,这个例子把某个对象的所有属性名称和值都打印出来:
- JAVA的内省机制(introspector)与反射机制(reflection)
- JAVA的内省机制(introspector)与反射机制(reflection)
- JAVA的内省机制(introspector)与反射机制(reflection)
- JAVA的内省机制(introspector)与反射机制(reflection)
- JAVA的内省机制(introspector)与反射机制(reflection)
- JAVA的内省机制(introspector)与反射机制(reflection)
- 【转】JAVA的内省(introspector)与反射(reflection)
- JAVA的内省(introspector)与反射(reflection)
- JAVA的内省(introspector)与反射(reflection)
- JAVA 的内省(introspector)与反射(reflection)
- JAVA 的内省(introspector)与反射(reflection)
- JAVA的反射(reflection)与 内省(introspector)
- JAVA的内省(introspector)与反射(reflection)
- JAVA的内省(introspector)与反射(reflection)
- JAVA的内省(introspector)与反射(reflection)
- java反射内省机制,Introspector
- Java反射(Reflection)与内省(Introspector)
- java 反射(Reflection)和内省(Introspector)
- Perl Learning: 2.6. The if Control Structure
- Learning Perl: 2.7. Getting User Input
- Learning Perl: 2.8. The chomp Operator
- 笔记
- C++ CFile::Rename 出现“拒绝访问”异常 及解决方案(不能说原创,自己悟出来的)
- JAVA的内省机制(introspector)与反射机制(reflection)
- 无电池的情况下,如何升级DELL INSPIRON 6400的bios
- Perl Learning: 2.9. The while Control Structure
- Perl Learning: 2.10. The undef Value
- Learning Perl: 2.11. The defined Function
- A
- CSS控制排版(转载)
- Learning Perl: 2.12. Exercises
- LINUX上安装memcached