我正在尝试从变量实例化一个类,并编写了一些测试代码。但是,不幸的是,它不起作用。这是代码:
Object co1 = new CommandDownloadHttp();
Class cc1 = Class.forName("CommandDownloadHttp");
Object co = cc1.newInstance();
不幸的是,在第二行它与java.lang.ClassNotFoundException
.
你能告诉我我做错了什么吗?
我正在尝试从变量实例化一个类,并编写了一些测试代码。但是,不幸的是,它不起作用。这是代码:
Object co1 = new CommandDownloadHttp();
Class cc1 = Class.forName("CommandDownloadHttp");
Object co = cc1.newInstance();
不幸的是,在第二行它与java.lang.ClassNotFoundException
.
你能告诉我我做错了什么吗?
CommandDownloadHttp 是类的全名,即它没有包吗?如果它确实有一个包,请包括:
Class.forName("foo.bar.CommandDownloadHttp");
(我认为你有更好的理由在你的真实代码中这样做,顺便说一句 - 显然在这种情况下你实际上不需要通过反射来获取类:)
你的课在包里吗?这个包是进口的吗?所以它在第 1 行有效。但是您需要 Class.forName("my.package.to.CommandDownloadHttp") 中的完整限定名。