为什么getCanonicalPath会抛出检查异常,而getAbsolutePath却没有?

ipk*_*iss 6 java io

我通过阅读一些相关文本来了解两者之间的差异.但我很好奇为什么getCanonicalPath()抛出检查异常getAbsolutePath()而不抛出任何东西?

aio*_*obe 14

但我很好奇为什么getCanonicalPath()抛出检查异常getAbsolutePath()而不抛出任何东西?

它说明了为什么在文档中getCanonicalPath:

IOException- 如果发生I/O错误,这是可能的,因为规范路径名的构造可能需要文件系统查询