如何根据字符串中的内容创建对象

 我来答
逆心小土豆
2017-09-01 · TA获得超过3618个赞
知道大有可为答主
回答量:2500
采纳率:0%
帮助的人:739万
展开全部
如何根据字符串动态创建类对象
就是如何根据类的名字和值,动态返回该类的实例对象。比如,我们给一个函数传入字符串类名”Java.lang.String”和值“wuguowei”,则该函数则返回一个值为“wuguowei”的字符串对象。当然,我们也可以返回Integer对象、Long对象等,该函数可以实现动态的创建对象。
一、 枚举法
由于同事的需求只涉及到基本类型的创建,由于基本对象的个数是有限的(也就那么几个),所以我们这里可以用枚举的方式动态的创建想要的对象,虽然有些繁琐,但是还是可以实现我们的需求的。

/**
* 根据传入的类名和值,动态构造该类的实例
*
* @param _sClassName
* 要构造的类名 如:java.lang.String
* @param _sRealValue
* 要创建的对象的值,比如“wuguowei”
* @return 返回String对象,即值为“wuguowei”的字符串
* @throws Exception
*/
private Object getAttributeObject(String _sClassName, String _sRealValue)
throws Exception {

//1.加载类对象
Class attrObjClass = Class.forName(_sClassName);

//2.如果是Long类
if (attrObjClass.isInstance(new Long(0))) {
return new Long(_sRealValue);
}

//3.如果是Integer类
if (attrObjClass.isInstance(new Integer(0))) {
return new Integer(_sRealValue);
}

//4.其他类型……

//5.返回当前类的实例对象
return attrObjClass;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式