chenxiang_java 2012-04-14 22:31
浏览 248
已采纳

通过反射得到实例?????

Class.forNmae("com.test.Test").newInstance,这样能得到一个实例。我的Test的类里有个有参的构造器,现在我有new 一个这个有参数的实例, 怎么办????????????????????

实在不好意思,没有分了。

技术交流,不惜赐教。
求大吓们指教。。。

  • 写回答

2条回答 默认 最新

  • iteye_16709 2012-04-14 22:58
    关注

    1.先获取构造器
    2.再通过构造器,创建实例。
    看看这个:
    [url]http://wojiaorara.iteye.com/blog/1418359[/url]
    参照类Class中的 public Constructor getDeclaredConstructor(Class<?>... parameterTypes)
    假设你的两个参数是:String str1,Integer in,
    [code="java"]

    Test test = null;
    Constructor con= null;

    try {

    // 拿到构造器数组,测试类包含多个私有构造器

    con= (Constructor[]) Class.forName(

    "com.test.Test").getDeclaredConstructor(String.Class,Integer.Class);

    test = con.newInstance("Li",2012);

    } catch (ClassNotFoundException e) {

    e.printStackTrace();

    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?