文档

Java™ 教程
隐藏目录
什么是路径?(以及其他文件系统知识)
路径: 基本Java类
课程: 基本输入/输出
章节: 文件输入/输出 (包含NIO.2)

什么是路径?(以及其他文件系统事实)

什么是路径?

相对路径还是绝对路径?

符号链接是一个特殊的文件,它作为对另一个文件的引用。在大多数情况下,符号链接对应用程序来说是透明的,对符号链接的操作会自动重定向到链接的目标。(指向的文件或目录被称为链接的目标)。只有在删除或重命名符号链接时,链接本身才会被删除或重命名,而不是链接的目标。

在下图中,logFile对用户来说看起来是一个普通文件,但实际上它是一个指向dir/logs/HomeLogFile的符号链接。链接的目标是HomeLogFile

示例符号链接

符号链接示例。

对用户来说,符号链接通常是透明的。读取或写入符号链接与读取或写入任何其他文件或目录相同。

解析链接的意思是将文件系统中的实际位置替换为符号链接。在这个例子中,解析logFile得到的是dir/logs/HomeLogFile

在现实世界的场景中,大多数文件系统广泛使用符号链接。偶尔,粗心创建的符号链接可能会导致循环引用。当链接的目标指向原始链接时,就会发生循环引用。循环引用可能是间接的:目录a指向目录b,目录b指向目录c,后者包含一个指向目录a的子目录。当程序递归遍历目录结构时,循环引用可能会导致混乱。但是,这种情况已经考虑到了,不会导致程序无限循环。

下一页将讨论Java编程语言中文件I/O支持的核心,Path类。


上一页: 文件I/O(使用NIO.2)
下一页: Path类