我试图在我的文件中捕获 InvocableTargetException ,但如果我没有明确为其编写导入语句,则会收到此错误。由于它位于java.lang的子包下,我不知道为什么必须导入它。//this is the import statement that workedimport java.lang.reflect.InvocationTargetException;这是错误消息:source\DatabaseDemo.java:38: error: cannot find symbol }catch (NoSuchMethodException | InstantiationException | SQLException | ClassNotFoundException | IllegalAccessException | InvocationTargetException e ){ ^ symbol: class InvocationTargetException location: class DatabaseDemo
2 回答
手掌心
TA贡献1942条经验 获得超3个赞
Java中没有子包的概念。为了方便起见,我们人类将包视为分层的,因为源代码通常被构造为目录的层次结构。然而,在语言级别上不存在这样的层次结构。换句话说,java.lang.reflect
不是 的“子包” java.lang
。由于只有包的类java.lang
是自动导入的,因此您必须显式导入InvocationTargetException
。
喵喵时光机
TA贡献1846条经验 获得超7个赞
要添加什么@Slaw,java中没有隐式子包导入。
package a; class A{}
和
package a.b; class B{}
如果您想在 A 中使用 B,则必须将其显式导入为:import a.b.B;
或import a.b.*;
希望能有所帮助
添加回答
举报
0/150
提交
取消