`

java反射实例

阅读更多
[color=indigo][color=indigo]public class Student{
  private Integer sex ;
  private String typeName ="good";
  private Date sysdate  ;
  ...
}

public class TestcopyBean{

public static Student getMap() {[color=indigo]

   Student map = new Student();
   map.setSex(new Integer(1));
   map.setTypeName( "hao");
   map.setSysdate(new Date());
       return map;
}

public static void merge(Student map)
    throws SecurityException, NoSuchFieldException,
    NoSuchMethodException, IllegalArgumentException,
    InvocationTargetException, ClassNotFoundException, InstantiationException, IllegalAccessException {

Class c=map.getClass();
Field[] fields = c.getDeclaredFields();//得到此类所有的字段
//根据传入对象的类型,构造一个新的对象  
Object o = c.newInstance();


Method setmethod = null;
for (int i = 0; i < fields.length; i++) {
String fieldName = fields[i].getName();
            String setMethod = "set" + fieldName.substring(0, 1).toUpperCase() +
            fieldName.substring(1);//根据字段名拼凑其set方法名
            String getMethod = "get"+ fieldName.substring(0, 1).toUpperCase() +
            fieldName.substring(1);
           //根据方法的名字,取得Method对象,下面两行语句分别取得了get和set方法对象 
            setmethod = c.getDeclaredMethod(setMethod,new Class[]{fields[i].getType()});
            Method getMothod=c.getMethod(getMethod, new Class[]{});
           
            Object value=getMothod.invoke(map, new Object[]{});  
            setmethod.invoke(o, new Object[]{value});  

}
Student beano = (Student)o;
System.out.println(beano.getSex()+" "+beano.getTypeName()+" "+beano.getSysdate());


   }

public static void main(String[] args) throws DocumentException, SecurityException, IllegalArgumentException, NoSuchFieldException, NoSuchMethodException, InvocationTargetException, ClassNotFoundException, InstantiationException, IllegalAccessException{

merge(getMap());
}[/color][/color][/color]
分享到:
评论
1 楼 wangsf 2009-12-23  
hao

相关推荐

    java反射实例代码

    一个java普通工程,反射的所有方法和实例都有,,另外还有注释,可以帮助理解

    Java反射实例源码

    Java反射实例源码,具体讲解内容见博客http://blog.csdn.net/liushuijinger 菜鸟学编程(九)——Java反射机制(一) 菜鸟学编程(十)——Java反射机制(二)

    java 反射实例,大量注释,简单易懂

    一个java反射的例子,通过java反射机制,动态生成java实例,动态执行方法。例子中有大量注释,简单易懂。

    Java 8个反射实例

    Java 8个反射实例 项目实例 项目工程

    java 反射 实例

    java 反射 的 实例介绍 个人笔记

    Java反射经典实例

    Java反射经典实例 Java反射经典实例 Java反射经典实例 Java反射经典实例

    java反射实例.

    反射入门小程序.通过反射机制执行JavaBean的get和set方法.

    Java反射简单小实例

    Java反射实例,可以给初学反射的同志们一定帮助。一个简单实例,可以更好的理解反射的规矩。

    Java反射实例

    常用的属性,方法和构造函数的获取实例,个人实际学习总结,亲测有效!

    java反射实例学习

    很好的几个反射的例子,看后就明白什么是反射了,反射机制怎么用了

    反射实例-JAVA反射机制.doc

    反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc反射实例-JAVA反射机制.doc...

    java反射经典实例

    java反射经典实例 看完之后,基本满足你要做的事情,其中包括修改各种私有属性,调用私有方法的例子代码。简单干练。

    Spring IOC 原理 ,Java 反射实例,自定义注解

    NULL 博文链接:https://zyqwst.iteye.com/blog/2255560

    Java反射机制总结

    这是一本关于Java反射机制论文集合的书。其中包含基本的理论及各种实例。... 关键字有:Java Java反射机制 Java反射 Java反射理论 Java反射实例 Java反射例子 反射原理 反射 网络论文 集合 汇总 总结 Class。

    Java 反射机制 代码的实例

    Java 反射机制 代码的实例 请认真阅读 运行此代码 只要读懂了 反射机制也就明白了

    Java反射应用实例

    代码主要实现了Java反射应用实例, 包含利用反射方法创建对象(使用默认构造函数和自定义构造函数),访问对应对象的方法(包括带参数的和不带参数的),访问对应对象的域(Field). 从这里可以看到代码的详细解说:...

Global site tag (gtag.js) - Google Analytics