【问题标题】:Path objects are abstract or not?路径对象是否抽象?
【发布时间】:2013-09-27 11:55:18
【问题描述】:

Path 对象不只是指抽象路径吗? 来自here的以下引用:

如果给定的路径与不同的文件系统相关联 path 则返回 false。

似乎并非如此。如果它只是抽象的,则引用哪个文件系统并不重要。 不是吗?

【问题讨论】:

    标签: java path nio


    【解决方案1】:

    虽然Path 实例与底层文件系统路径没有内在关联,但实际的实现类可能不同。例如,您有WindowsPath (WindowsFileSystem) 和ZipPath (ZipFileSystem)。尽管路径字符串本身可能相同,但它们与不同的FileSystems 相关,因此该方法应该返回false

    Path 是一个接口。然而startsWith 的实现关心传递给它的Path 实例的实际实现类型。

    【讨论】:

    • 所以基本上它返回 true 只是它是相同的路径.. 它的名称很混乱,因为它似乎只检查开头
    • @IndeedItIs 如果是来自同一FileSystem 的同一路径,则返回true。假设您在 zip 文件中有一个路径,例如 /usr/app/file.txt,还有一个来自文件系统根目录的文件,例如 /usr/app/file.txt。尽管路径由相同的字符串表示,但它们在任何方面都不相等(或startsWith彼此)。
    猜你喜欢
    • 2014-09-16
    • 1970-01-01
    • 2014-08-27
    • 1970-01-01
    • 2013-04-26
    • 1970-01-01
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    相关资源
    最近更新 更多