Module java.base
Package java.nio.file

Interface Watchable

已知的所有子接口:
Path

public interface Watchable
一个可以注册到监视服务中以便对其进行更改和事件监视的对象。

该接口定义了register方法,用于将对象注册到一个WatchService,返回一个代表注册的WatchKey。一个对象可以注册到多个监视服务中。通过调用键的cancel方法来取消与监视服务的注册。

自版本:
1.7
参见:
  • Method Details

    • register

      WatchKey register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers) throws IOException
      使用监视服务注册一个对象。

      如果由该对象标识的文件系统对象当前已经注册到监视服务中,则在将事件集或修饰符更改为eventsmodifiers参数指定的值后,返回代表该注册的监视键。更改事件集不会导致对象的待处理事件被丢弃。对象会自动注册到OVERFLOW事件。此事件不需要出现在事件数组中。

      否则,文件系统对象尚未注册到给定的监视服务中,因此将其注册并返回生成的新键。

      该接口的实现应指定它们支持的事件。

      参数:
      watcher - 要将此对象注册到的监视服务
      events - 应该注册此对象的事件
      modifiers - 修饰符,如果有的话,修改对象的注册方式
      返回:
      代表此对象与给定监视服务的注册
      抛出:
      UnsupportedOperationException - 如果指定了不支持的事件或修饰符
      IllegalArgumentException - 如果指定了无效的事件组合或修饰符
      ClosedWatchServiceException - 如果监视服务已关闭
      IOException - 如果发生I/O错误
      SecurityException - 如果安装了安全管理器并且拒绝了监视此对象所需的未指定权限。该接口的实现应指定权限检查。
    • register

      WatchKey register(WatchService watcher, WatchEvent.Kind<?>... events) throws IOException
      使用监视服务注册一个对象。

      调用此方法的行为与调用方式完全相同

          register.watcher, events, new WatchEvent.Modifier[0]);
      
      参数:
      watcher - 要将此对象注册到的监视服务
      events - 应该注册此对象的事件
      返回:
      代表此对象与给定监视服务的注册
      抛出:
      UnsupportedOperationException - 如果指定了不支持的事件
      IllegalArgumentException - 如果指定了无效的事件组合
      ClosedWatchServiceException - 如果监视服务已关闭
      IOException - 如果发生I/O错误
      SecurityException - 如果安装了安全管理器并且拒绝了监视此对象所需的未指定权限。该接口的实现应指定权限检查。