我的问题是:从其字符串名称实例化一个类,该名称描述了如何在拥有名称时实例化一个类.有没有办法在Java中做到这一点?我将拥有包名和类名,我需要能够创建具有该特定名称的对象.
我正在从XML中读取信息,其中包含我需要实例化的对象类型及其构造函数参数.
对象类型实际上位于兄弟命名空间内的另一个项目中.(我需要在Company.Project1类中创建一个Company.Project2.Type.)
我发现了这个问题,但它没有处理构造函数参数或它在另一个命名空间中的事实.
我怎样才能做到这一点?
编辑:项目属性中未正确设置程序集名称和默认名称空间.
你有没有获得班级的当前实例?
该类有搜索方法和取消方法.
代码示例:
if (btnSearch.Text =="Search")
{
Searcher srch = new Searcher();
srch.Search();
btnSearch.Text = "Cancel";
return;
}
if (btnSearch.Text == "Cancel")
{
//call a method in the instance above for example
srch.Cancel();
}
Run Code Online (Sandbox Code Playgroud)
我想只在btnSearch.Text =="搜索"时创建实例; 当btnSearch.Text =="取消"时; 我想打电话给srch.Cancel();
////感谢nmclean,问题解决了,我觉得必须在更高的范围内声明Search类才能访问当前运行的实例.