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

Java反射机制 详解 基本功

一般而言,开发者社群说到动态语言,大致认同的一个定义是:“程序运行时,运行改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,perl,phthon,ruby是动态语言,C++,JAVA,C#不是动态语言。
 
在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法? 答案是肯定的,这种动态获取类的信息以及动态调用对象的方法的功能来自于Java语言的反射(Reflection)机制。
Java反射机制主要提供了以下功能:
在运行时判断任意一个对象所属的类。
在运行时构造任意一个类的对象.
在运行时判断任意一个类所具有的成员变量和方法。
在运行时调用任意一个对象的方法。
reflection是Java被视为动态(或准动态)语言的一个关键性质,这个机制运行程序在运行时透过reflection apis取得任意一个已知名称的class的
内部信息,包括其modifiers(诸如public,static等等),superclass(例如Object),实现之Interface(例如serializable),也包括fields和methods的所有信息,并可于运行时改变fields内容或调用methods。
 
在JDK中,主要由以下类来实现Java反射机制,这些类都位于Java.lang.reflect包中
Class类:代表一个类
Field类: 代表类的成员变量(成员变量也称为类的属性)。
Method类: 代表类的方法。
Constructor类: 代表类都构造方法。
Array类: 提供了动态创建数组,以及访问数组的元素的静态方法
例程DumpMethods类演示了ReflectionAPI的基本作用,它读取命令行参数指定的类名,然后打印这个类所具有的方法信息。
public static void main(String args[]){
    Class<?> classType=Class.forName(args[0]);
    Method methods[]=classType.getDeclaredMethods();
    for(int i=0; i<method.length;i++)
    {
         System.out.println(methods[i].toString());
         }
}
 
例程ReflectTester类进一步演示了ReflectionAPI的基本使用方法。  ReflectTester类有一个copy(Object object)方法,这个方法能够创建一个和参数object同样类型的对象,然后把object对象中的所有属性拷贝到新建的对象中,并将它返回
 
这个例子只能复制简单的JavaBean,假定JavaBea


相关文档:

在java中用数据库连接池连接数据库

好多大型的企业项目都要用到高级JDBC连接数据库配置高级JDBC实例如下:
第一:配置Tomcat下的conf文件夹下的context.xml文件
<?xml version='1.0' encoding='utf-8'?>
<Context>
 <Resource name="jdbc/名称" auth="Container" type="javax.sql.DataSource"
  maxActive="10" maxIdle=" ......

Java EL系列 2.JUEL快速入门

  inkfish翻译,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish
)。本文是我学习JUEL同时,对原网站进行的简单的翻译,原网站地址:http://juel.sourceforge.net/guide/start.html

快速入门
  JUEL
发行版包含下面一些jar文件:(来源:http://blog.csdn.net/inkfish)
  1.juel-api-2.2 ......

关于用Java程序实现8421码权限管理 第四部分

自定义标签,标签处理器类:
PrivilegeTag.Java有权限的类设计:
package com.qizhi.tags.bean;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.jsp.tagext.TagSupport;
import com.qizhi.entity.Roleright;
import com.qizh ......

java中可以实现一个线程的方法

有两种实现方法,分别是继承Thread类与实现Runnable接口
用synchronized关键字修饰同步方法
反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它们。结果很难检查出真正的问题所在。suspend()方法容易发生死锁。调用suspend()的时候 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号