利用Java反射机制创建对象,Spring管理Bean原理 例子。

来源:互联网 发布:cdn 云计算 编辑:程序博客网 时间:2024/05/01 19:18

com.han.Persion


package com.han;/**************** * 实体类 * CopyRight(C)2016-6-21 14:46:224 * 利用反射机制创建对象 ,(Spring管理Bean的原理) * Author:邱于涵 * *************************/public class Persion {private String name;public Persion(){}public String getName() {return name;}public void setName(String name) {this.name = name;}public void print(){System.out.println(this.name);}}
Entry.java
import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;/**************** * 入口类 * CopyRight(C)2016-6-21 14:46:224 * 利用反射机制创建对象 ,(Spring管理Bean的原理) * Author:邱于涵 * *************************/import com.han.*;public class Entry {public static void main(String []args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, NoSuchMethodException, SecurityException, IllegalArgumentException, InvocationTargetException{/************************************** * 解析<beqan />元素获得 id   * *获得 (包名)类名 *  以及Setter名称 和注入的 变量值 * ***********************/try{//|利用 反射机制创建 Class对象Class clazz=Class.forName("com.han.Persion");//|利用Class 对象实例化 ObjectObject obj=clazz.newInstance();//|根据setter名称 获取Method ,需要传入 参数列表的 Class对象Method nameSetter=clazz.getMethod("setName",String.class);//|为Method对象传入参数,达到为 Object传入参数的目的nameSetter.invoke(obj, "邱于涵");//|向下转型,并且打印Persion persion=(Persion)obj;persion.print();}catch(ClassNotFoundException e){};//|}}
运行结果:
邱于涵
0 0
原创粉丝点击