Avr*_*dis 8 java classnotfoundexception
在我的主要内容中,我有以下声明
Class booki = Class.forName("Book");
这引发了一个java.lang.ClassNotFoundException例外
当我使用完整路径时就好Class booki = Class.forName("javatests.Book");了.
主类和Book类在同一个包中,我也尝试使用import static javatests.Book.*;但如果我没有设置完整路径,它仍会引发异常javatests.Book.有人能解释一下为什么吗?
来自文档Class#forName
public static Class<?> forName(String className)
throws ClassNotFoundException
Run Code Online (Sandbox Code Playgroud)
参数:
className - 所需类的完全限定名称。
所以这不会抛出ClassNotFoundException
Class booki = Class.forName("javatests.Book");
Run Code Online (Sandbox Code Playgroud)
例如,在java程序中不需要导入包,但要从包中java.lang.*加载类,则需要编写 Threadjava.lang
Class t = Class.forName("java.lang.Thread");
Run Code Online (Sandbox Code Playgroud)
上面的代码片段返回名为的类的运行时类描述符java.lang.Thread
| 归档时间: |
|
| 查看次数: |
12376 次 |
| 最近记录: |