六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 36|回复: 0

java映射

[复制链接]

升级  13%

73

主题

73

主题

73

主题

举人

Rank: 3Rank: 3

积分
239
 楼主| 发表于 2013-1-27 05:06:34 | 显示全部楼层 |阅读模式
映射是软件对自身进行分析的能力,主要由Java.lang.reflect 包和Java.lang.Class中的元素提供,在Java Bean中经常要用到它。它允许在运行时分析软件组建并动态的描述它的功能,而无须等到编译。比如,使用映射可以知道一个类所支持的方法、构造函数和域。java.lang.reflect包中有一个名为Member的接口,定义了得到这些信息的方法。另外还有类Constructor,Field,Method,Modifier方法,提供了有关构造器、域、方法、访问限定符等的相关信息。
使用映射时,首先用Class的forName方法获得一个类对象,然后用这个对象的getConstructor, getFields, getMethods方法分析。如程序:
 Class c = Class.forName("java.awt.Dimension");
  System.out.println("Constructors:");
  Constructor constructor[] = c.getConstructors();
  Field fields[] = c.getFields();
  Method methods[] = c.getMethods();
  for(int i = 0; i<methods.length; i++)
  {
   int modifiers = methods.getModifiers();
   if(Modifier.isPublic(modifiers)){
    System.out.println("public function:" + methods.getName());
   }   
  }
上面的程序还牵涉到了Modifier的使用。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表