Java Reflection (JAVA反射)
Reflection 是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,并能直接操作程序的内部属性。例如,使用它能获得 Java 类中各成员的名称并显示出来。
Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性。例如,Pascal、C 或者 C++ 中就没有办法在程序中获得函数定义相关的信息。
JavaBean 是 reflection 的实际应用之一,它能让一些工具可视化的操作软件组件。这些工具通过 reflection 动态的载入并取得 Java 组件(类) 的属性。
1. 一个简单的例子
考虑下面这个简单的例子,让我们看看 reflection 是如何工作的。
import java.lang.reflect.*;
public class DumpMethods {
public static void main(String args[]) {
try {
Class c = Class.forName(args[0]);
Method m[] = c.getDeclaredMethods();
for (int i = 0; i < m.length; i++)
System.out.println(m[i].toString());
} catch (Throwable e) {
System.err.println(e);
}
}
}
按如下语句执行:
java DumpMethods java.util.Stack
它的结果输出为:
public java.lang.Object java.util.Stack.push(java.lang.Object)
public synchronized java.lang.Object java.util.Stack.pop()
public synchronized java.lang.Object java.util.Stack.peek()
public boolean java.util.Stack.empty()
public synchronized int java.util.Stack.search(java.lang.Object)
这样就列出了java.util.Stack 类的各方法名以及它们的限制符和返回类型。
这个程序使用 Class.forName 载入指定的类,然后调用 getDeclaredMethods 来获取这个类中定义了的方法列表。java.lang.reflect.Methods 是用来描述某个类中
相关文档:
鉴于爬虫开发需要一个图片解析功能的函数,到网络上查找了一些jni方面的内容,并做了自己的一些修改,具体如下:
目前java与dll交互的技术主要有3种:jni,jawin和jacob。Jni(Java Native Interface)是sun提供的java与系统中的原生方法交互的技术(在windows\linux系统中,实现java与native method互调)。 ......
Observer
Intent
Define a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically.
How to
Subject
knows its observers. Any number of Observer objects may observe a subject.
provides an in ......
Java对象XML序列化框架-Simple2.0
Simple是一个XML序列化框架,一个Java
版本宽容的序列化框架,能够快速在Java
平台上开发XML。支持通过annotations完全配置化的XML结构;提供版本管理框架允许向前和向后兼容序列化;更好的性能,使用轻量级StAX提升XML反序列化
进程,比XStream和JAXB更快;通过namespace ......
Java编程那些事儿1——序言
Java编程那些事儿2——程序设计是什么?
Java编程那些事儿3——你适合学习程序设计吗?
Java编程那些事儿4——如何学好程序设计?
Java编程那些事儿5——程序设计介绍小结
Java编程那些事儿6——计算机软件基本概念
Java编 ......
java jce对aes算法有很好的支持,但是默认安装的JDK或者JRE是不能支持aes192bit密钥和aes256bit密钥两种算法的,需要到sun官方下载Java(TM) Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files,以下是jce unilimited strength jurisdiction policy files 6的官方 ......