Java 什么是SimpleFileVisitor的非递归定义?
Oracle的Java文档对SimpleFileVisitor有一个非常有用的定义:“以默认行为访问所有文件并重新抛出I/O错误的文件的简单访问者。”,有人能解释一下访问一个文件意味着什么或者这是多么简单吗?a是一个对象,它的回调方法作为一种方法被调用,比如遍历公共根目录下的整个文件层次结构。当遇到树中的每个文件或目录时,我们称之为“已访问”。此时,传递给walk方法的FileVisitor参数会调用其一个或多个方法,具体取决于每个文件的性质 事实上,将其与FileVisitor界面区分开来: 以默认行为访问所有文件并重新抛出I/O错误的文件的简单访问者 此类中的方法可以根据其一般约定被重写 SimpleFileVisitor实现FileVisitor的每个方法。每个实现的方法都返回一个Java 什么是SimpleFileVisitor的非递归定义?,java,file,nio,Java,File,Nio,Oracle的Java文档对SimpleFileVisitor有一个非常有用的定义:“以默认行为访问所有文件并重新抛出I/O错误的文件的简单访问者。”,有人能解释一下访问一个文件意味着什么或者这是多么简单吗?a是一个对象,它的回调方法作为一种方法被调用,比如遍历公共根目录下的整个文件层次结构。当遇到树中的每个文件或目录时,我们称之为“已访问”。此时,传递给walk方法的FileVisitor参数会调用其一个或多个方法,具体取决于每个文件的性质 事实上,将其与FileVisitor界面区分开来:
FileVisitResult
,告诉walk算法继续遍历树;这就是javadoc类中“访问所有文件”的含义。任何异常都是传播的,而不是捕获和抑制的;这就是javadoc类中“重新抛出I/O错误”的含义
“简单”部分意味着SimpleFileVisitor没有自己的功能。它是一个“空”类:每个方法只允许继续文件树遍历
最后,类javadoc声明了该类的预期用途:子类将覆盖一个或多个方法。与所有面向对象的继承一样,子类应遵守每个方法以及每个继承类和接口的书面约定(javadoc)。请参见。这与递归有什么关系?另请参见。请注意,
SimpleFileVisitor
是FileVisitor
接口的一个方便的框架实现;如果您只需要实现其中的一些方法,而不是全部四种方法(即,您只需要覆盖您需要的方法),您就可以扩展SimpleFileVisitor
。@Andreas我相信他的意思是,措辞是递归的。将一个SimpleFileVisitor描述为“文件的简单访问者”就像一本字典定义为“食物:n.参见食物”