我正在对 Java NIO.2 及其文件操作进行一些研究,目前我正在使用文件树遍历函数和类。
NIO.2 FileVisitorAPI 很棒,可惜最近才在 Java SE 中添加这样的东西,而不是十年前。然而,有一点让我有点困扰:使FileVisitor接口通用的意义何在?
网上的每一个例子都展示了如何使用它,Files.walkFileTree()这意味着我们正在使用FileVisitor<Path>类型。但我只是看不到这个接口对Path. 好吧,也许可以FileVisitor用来遍历其他类型的树(内存中的树?),但这感觉不对:这个接口和相关类具有与文件语义相关的非常具体的名称,以及FileVisitor's 方法扔IOExceptions.
FileVisitor那么,参数化类型有什么原因吗?