栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java如何从字符串实例化一个类

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java如何从字符串实例化一个类

“使用

java.lang.reflect
”将回答您的所有问题。首先
Class
使用来获取对象
Class.forName()
,然后:

如果要实例化使用检索的类,

forName()
则必须首先要求它提供一个
java.lang.reflect.Constructor
代表我想要的构造函数的对象,然后要求该
Constructor
对象创建一个新对象。该方法
getConstructor(Class[]parameterTypes)
Class
将检索
Constructor
;
然后,我可以
Constructor
通过调用其方法来使用它
newInstance(Object[] parameters)

Class myClass = Class.forName("MyClass");Class[] types = {Double.TYPE, this.getClass()};Constructor constructor = myClass.getConstructor(types);Object[] parameters = {new Double(0), this};Object instanceOfMyClass = constructor.newInstance(parameters);

有一种

newInstance()
方法
Class
似乎可以满足您的要求。 不要使用它 。它将静默地将检查的异常转换为未检查的异常。

请注意,此方法传播由nullary构造函数引发的所有异常,包括已检查的异常。这种方法的使用有效地绕过了编译时异常检查,否则该检查将由编译器执行。该

Constructor.newInstance
方法通过将构造函数抛出的任何异常包装在(选中)中来避免此问题
InvocationTargetException



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/449620.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号