易截截图软件、单文件、免安装、纯绿色、仅160KB

java中的reflect机制(转)

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 载入指定的类,然后调用 get


相关文档:

java常用的Listener分类

Listener是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。(通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。当增加一个HttpSession时,就激发
sessionCreated(HttpSessionEvent se)方法,这样就可以给在线人数加1。)
Servlet 监听器用于监听一些重要事件的发生,监听器对象在事情发生前、发 ......

Java 继承小例

看看下面程序将输出什么结果:
/**
* ShowExtending
* 演示继承时的现象
*/
class SupCls {
static String s1 = "父类类变量s1";
String s2 = "父类实例变量s2";
SupCls(){
System.out.println("父类构造器被访问");
}
public static void f1(){ ......

用java解释时莫带.class

刚刚运行java HelloWorld.class,老是说:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld/class
Caused by: java.lang.ClassNotFoundException: HelloWorld.class
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    ......

Java I/O常用流示例


package io;   
import java.io.*;   
/**  
* @author 高枕吴忧  
* 利用缓冲区原理,BufferedInputStream,  
* 实现的文件字节流读取功能示范  
*  
*/  
public class BufferedInOutputStream {  & ......

二、(1)数据层 有关Java代码

l组件从功能上分可分为:
   1) 顶层容器:JFrame,JApplet,JDialog,JWindow
   2) 中间容器:JPanel,JScrollPane,JSplitPane,JToolBar 
   3) 特殊容器:在GUI上起特殊作用的中间层,如JInternalFrame,JLayeredPane,JRootPane.
1.JFrame的用法
1) 用getContentPane( )方法获得JFrame的 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号