java 反射 类的带参数实例化
问题是这样的:首先知道有一个model类,知道它有全参的构造方法,还有带有部分参数的构造方法,没有空参构造方法,但是不知道它有什么属性,不知道它构造方法的顺序,现在我想用...
问题是这样的:
首先知道有一个model类,
知道它有全参的构造方法,
还有带有部分参数的构造方法,
没有空参构造方法,
但是不知道它有什么属性,
不知道它构造方法的顺序,
现在我想用全参构造方法new一个实例,
但是想了好多办法都报错,
求一个解觉办法……
PS:主要就是里面有一个int不好用String类型的int来.Class变成Class类型
注:那个model不是我写的,我只是做一个一般性实例化
就是传入一个String类型的类名,返回这个类的全参实例化
上面的方法我写了 ,但是遇到基础数据类型就报错,原因我就是你说的那个 展开
首先知道有一个model类,
知道它有全参的构造方法,
还有带有部分参数的构造方法,
没有空参构造方法,
但是不知道它有什么属性,
不知道它构造方法的顺序,
现在我想用全参构造方法new一个实例,
但是想了好多办法都报错,
求一个解觉办法……
PS:主要就是里面有一个int不好用String类型的int来.Class变成Class类型
注:那个model不是我写的,我只是做一个一般性实例化
就是传入一个String类型的类名,返回这个类的全参实例化
上面的方法我写了 ,但是遇到基础数据类型就报错,原因我就是你说的那个 展开
展开全部
把参数里面的int改成Integer public Person(String name, Integer age) 这种
/**
* 得到带构造的类的实例
* */
public static Object newInstance(String className, Object[] args) throws Exception {
Class newoneClass = Class.forName(className);
Class[] argsClass = new Class[args.length];
for (int i = 0, j = args.length; i < j; i++) {
argsClass[i] = args[i].getClass();
}
Constructor cons = newoneClass.getConstructor(argsClass);
return cons.newInstance(args);
}
/**
* 得到带构造的类的实例
* */
public static Object newInstance(String className, Object[] args) throws Exception {
Class newoneClass = Class.forName(className);
Class[] argsClass = new Class[args.length];
for (int i = 0, j = args.length; i < j; i++) {
argsClass[i] = args[i].getClass();
}
Constructor cons = newoneClass.getConstructor(argsClass);
return cons.newInstance(args);
}
追问
我的问题是那个model不是我写的 我只是做一个一般性实例化
就是传入一个String类型的类名,返回这个类的全参实例化
上面的方法我写了 ,但是遇到基础数据类型就报错,原因我就是你说的那个
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询