# Hierarchy For All Packages

Package Hierarchies:

- org.apache.commons.io,
- org.apache.commons.io.build,
- org.apache.commons.io.channels,
- org.apache.commons.io.charset,
- org.apache.commons.io.comparator,
- org.apache.commons.io.file,
- org.apache.commons.io.file.attribute,
- org.apache.commons.io.file.spi,
- org.apache.commons.io.filefilter,
- org.apache.commons.io.function,
- org.apache.commons.io.input,
- org.apache.commons.io.input.buffer,
- org.apache.commons.io.monitor,
- org.apache.commons.io.output,
- org.apache.commons.io.serialization

## Class Hierarchy

- java.lang.Object
  - org.apache.commons.io.filefilter.AbstractFileFilter (implements org.apache.commons.io.filefilter.IOFileFilter, org.apache.commons.io.file.PathVisitor)
    - org.apache.commons.io.filefilter.AgeFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.AndFileFilter (implements org.apache.commons.io.filefilter.ConditionalFileFilter, java.io.Serializable)
    - org.apache.commons.io.filefilter.CanExecuteFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.CanReadFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.CanWriteFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.DelegateFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.DirectoryFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.EmptyFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.FileEqualsFileFilter
    - org.apache.commons.io.filefilter.FileFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.HiddenFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.MagicNumberFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.NameFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.NotFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.OrFileFilter (implements org.apache.commons.io.filefilter.ConditionalFileFilter, java.io.Serializable)
    - org.apache.commons.io.filefilter.PathEqualsFileFilter
    - org.apache.commons.io.filefilter.PathMatcherFileFilter
    - org.apache.commons.io.filefilter.PathVisitorFileFilter
    - org.apache.commons.io.filefilter.PrefixFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.RegexFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.SizeFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.SuffixFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.SymbolicLinkFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.WildcardFileFilter (implements java.io.Serializable)
    - org.apache.commons.io.filefilter.WildcardFilter (implements java.io.Serializable)
  - org.apache.commons.io.build.AbstractSupplier<T,B> (implements org.apache.commons.io.function.IOSupplier<T>)
    - org.apache.commons.io.build.AbstractOrigin<T,B>
      - org.apache.commons.io.build.AbstractOrigin.ByteArrayOrigin
      - org.apache.commons.io.build.AbstractOrigin.CharSequenceOrigin
      - org.apache.commons.io.build.AbstractOrigin.FileOrigin
      - org.apache.commons.io.build.AbstractOrigin.InputStreamOrigin
      - org.apache.commons.io.build.AbstractOrigin.OutputStreamOrigin
      - org.apache.commons.io.build.AbstractOrigin.PathOrigin
      - org.apache.commons.io.build.AbstractOrigin.ReaderOrigin
      - org.apache.commons.io.build.AbstractOrigin.URIOrigin
      - org.apache.commons.io.build.AbstractOrigin.WriterOrigin
    - org.apache.commons.io.build.AbstractOriginSupplier<T,B>
      - org.apache.commons.io.build.AbstractStreamBuilder<T,B>
        - org.apache.commons.io.input.AutoCloseInputStream.Builder
        - org.apache.commons.io.input.BOMInputStream.Builder
        - org.apache.commons.io.input.BoundedInputStream.Builder
        - org.apache.commons.io.input.BufferedFileChannelInputStream.Builder
        - org.apache.commons.io.input.CharSequenceInputStream.Builder
        - org.apache.commons.io.input.ChecksumInputStream.Builder
        - org.apache.commons.io.output.ChunkedOutputStream.Builder
        - org.apache.commons.io.output.DeferredFileOutputStream.Builder
        - org.apache.commons.io.output.FileWriterWithEncoding.Builder
        - org.apache.commons.io.output.LockableFileWriter.Builder
        - org.apache.commons.io.input.MemoryMappedFileInputStream.Builder
        - org.apache.commons.io.input.MessageDigestCalculatingInputStream.Builder
        - org.apache.commons.io.input.MessageDigestInputStream.Builder
        - org.apache.commons.io.input.QueueInputStream.Builder
        - org.apache.commons.io.input.RandomAccessFileInputStream.Builder
        - org.apache.commons.io.input.ReadAheadInputStream.Builder
        - org.apache.commons.io.input.ReaderInputStream.Builder
        - org.apache.commons.io.input.ReversedLinesFileReader.Builder
        - org.apache.commons.io.input.Tailer.Builder
        - org.apache.commons.io.input.ThrottledInputStream.Builder
        - org.apache.commons.io.input.UncheckedBufferedReader.Builder
        - org.apache.commons.io.input.UncheckedFilterInputStream.Builder
        - org.apache.commons.io.output.UncheckedFilterOutputStream.Builder
        - org.apache.commons.io.input.UncheckedFilterReader.Builder
        - org.apache.commons.io.output.UncheckedFilterWriter.Builder
        - org.apache.commons.io.input.UnsynchronizedBufferedInputStream.Builder
        - org.apache.commons.io.input.UnsynchronizedByteArrayInputStream.Builder
        - org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream.Builder
        - org.apache.commons.io.input.UnsynchronizedFilterInputStream.Builder
        - org.apache.commons.io.output.WriterOutputStream.Builder
        - org.apache.commons.io.input.XmlStreamReader.Builder
        - org.apache.commons.io.output.XmlStreamWriter.Builder
    - org.apache.commons.io.filefilter.WildcardFileFilter.Builder
  - org.apache.commons.io.ByteOrderMark (implements java.io.Serializable)
  - org.apache.commons.io.ByteOrderParser
  - org.apache.commons.io.charset.CharsetDecoders
  - org.apache.commons.io.charset.CharsetEncoders
  - org.apache.commons.io.Charsets
  - org.apache.commons.io.input.buffer.CircularByteBuffer
  - org.apache.commons.io.comparator.CompositeFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.CopyUtils
  - org.apache.commons.io.file.Counters
  - org.apache.commons.io.comparator.DefaultFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.comparator.DirectoryFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.file.DirectoryStreamFilter (implements java.nio.file.DirectoryStream.Filter<T>)
  - org.apache.commons.io.DirectoryWalker<T>
  - org.apache.commons.io.EndianUtils
  - org.apache.commons.io.function.Erase
  - org.apache.commons.io.comparator.ExtensionFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.filefilter.FalseFileFilter (implements org.apache.commons.io.filefilter.IOFileFilter, java.io.Serializable)
  - org.apache.commons.io.monitor.FileAlterationListenerAdaptor (implements org.apache.commons.io.monitor.FileAlterationListener)
  - org.apache.commons.io.monitor.FileAlterationMonitor (implements java.lang.Runnable)
  - org.apache.commons.io.monitor.FileAlterationObserver (implements java.io.Serializable)
  - org.apache.commons.io.channels.FileChannels
  - org.apache.commons.io.FileCleaner
  - org.apache.commons.io.FileCleaningTracker
  - org.apache.commons.io.FileDeleteStrategy
  - org.apache.commons.io.monitor.FileEntry (implements java.io.Serializable)
  - org.apache.commons.io.filefilter.FileFilterUtils
  - org.apache.commons.io.FilenameUtils
  - org.apache.commons.io.file.FilesUncheck
  - org.apache.commons.io.file.spi.FileSystemProviders
  - org.apache.commons.io.FileSystemUtils
  - org.apache.commons.io.file.attribute.FileTimes
  - org.apache.commons.io.FileUtils
  - org.apache.commons.io.HexDump
  - java.io.InputStream (implements java.io.Closeable)
    - org.apache.commons.io.input.BrokenInputStream
    - org.apache.commons.io.input.BufferedFileChannelInputStream
    - org.apache.commons.io.input.CharSequenceInputStream
    - org.apache.commons.io.input.CircularInputStream
      - org.apache.commons.io.input.InfiniteCircularInputStream
    - org.apache.commons.io.input.ClosedInputStream
    - org.apache.commons.io.input.DemuxInputStream
    - java.io.FilterInputStream
      - org.apache.commons.io.input.buffer.CircularBufferInputStream
        - org.apache.commons.io.input.buffer.PeekableInputStream
      - org.apache.commons.io.input.ProxyInputStream
        - org.apache.commons.io.input.AutoCloseInputStream
        - org.apache.commons.io.input.BOMInputStream
        - org.apache.commons.io.input.BoundedInputStream
        - org.apache.commons.io.input.CloseShieldInputStream
        - org.apache.commons.io.input.CountingInputStream
          - org.apache.commons.io.input.ChecksumInputStream
          - org.apache.commons.io.input.ThrottledInputStream
        - org.apache.commons.io.input.MarkShieldInputStream
        - org.apache.commons.io.input.ObservableInputStream
          - org.apache.commons.io.input.MessageDigestCalculatingInputStream
          - org.apache.commons.io.input.MessageDigestInputStream
        - org.apache.commons.io.input.SwappedDataInputStream (implements java.io.DataInput)
        - org.apache.commons.io.input.TaggedInputStream
        - org.apache.commons.io.input.TeeInputStream
      - org.apache.commons.io.input.ReadAheadInputStream
      - org.apache.commons.io.input.UncheckedFilterInputStream
    - org.apache.commons.io.input.MemoryMappedFileInputStream
    - org.apache.commons.io.input.NullInputStream
    - java.io.ObjectInputStream (implements java.io.ObjectInput, java.io.ObjectStreamConstants)
      - org.apache.commons.io.input.ClassLoaderObjectInputStream
      - org.apache.commons.io.serialization.ValidatingObjectInputStream
    - org.apache.commons.io.input.QueueInputStream
    - org.apache.commons.io.input.RandomAccessFileInputStream
    - org.apache.commons.io.input.ReaderInputStream
    - org.apache.commons.io.input.UnixLineEndingInputStream
    - org.apache.commons.io.input.UnsynchronizedByteArrayInputStream
    - org.apache.commons.io.input.UnsynchronizedFilterInputStream
      - org.apache.commons.io.input.UnsynchronizedBufferedInputStream
    - org.apache.commons.io.input.WindowsLineEndingInputStream
  - org.apache.commons.io.IOUtils
  - org.apache.commons.io.comparator.LastModifiedFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.LineIterator (implements java.io.Closeable, java.util.Iterator<E>)
  - org.apache.commons.io.comparator.NameFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.output.NullAppendable (implements java.lang.Appendable)
  - org.apache.commons.io.input.ObservableInputStream.Observer
    - org.apache.commons.io.input.MessageDigestCalculatingInputStream.MessageDigestMaintainingObserver
    - org.apache.commons.io.input.MessageDigestInputStream.MessageDigestMaintainingObserver
    - org.apache.commons.io.input.TimestampedObserver
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - org.apache.commons.io.output.AbstractByteArrayOutputStream
      - org.apache.commons.io.output.ByteArrayOutputStream
      - org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream
    - org.apache.commons.io.output.AppendableOutputStream<T>
    - org.apache.commons.io.output.BrokenOutputStream
    - org.apache.commons.io.output.ClosedOutputStream
    - org.apache.commons.io.output.DemuxOutputStream
    - java.io.FilterOutputStream
      - org.apache.commons.io.output.ChunkedOutputStream
      - java.io.PrintStream (implements java.lang.Appendable, java.io.Closeable)
        - org.apache.commons.io.output.NullPrintStream
      - org.apache.commons.io.output.ProxyOutputStream
        - org.apache.commons.io.output.CloseShieldOutputStream
        - org.apache.commons.io.output.CountingOutputStream
        - org.apache.commons.io.output.TaggedOutputStream
        - org.apache.commons.io.output.TeeOutputStream
      - org.apache.commons.io.output.UncheckedFilterOutputStream
    - org.apache.commons.io.output.NullOutputStream
    - org.apache.commons.io.output.QueueOutputStream
    - org.apache.commons.io.output.ThresholdingOutputStream
      - org.apache.commons.io.output.DeferredFileOutputStream
    - org.apache.commons.io.output.WriterOutputStream
  - org.apache.commons.io.comparator.PathFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.file.PathUtils
  - org.apache.commons.io.RandomAccessFiles
  - java.io.Reader (implements java.io.Closeable, java.lang.Readable)
    - org.apache.commons.io.input.BoundedReader
    - org.apache.commons.io.input.BrokenReader
    - java.io.BufferedReader
      - org.apache.commons.io.input.UncheckedBufferedReader
    - org.apache.commons.io.input.CharSequenceReader (implements java.io.Serializable)
    - org.apache.commons.io.input.ClosedReader
    - java.io.FilterReader
      - org.apache.commons.io.input.AbstractCharacterFilterReader
        - org.apache.commons.io.input.CharacterFilterReader
        - org.apache.commons.io.input.CharacterSetFilterReader
      - org.apache.commons.io.input.ProxyReader
        - org.apache.commons.io.input.CloseShieldReader
        - org.apache.commons.io.input.TaggedReader
        - org.apache.commons.io.input.TeeReader
      - org.apache.commons.io.input.UncheckedFilterReader
    - org.apache.commons.io.input.NullReader
    - org.apache.commons.io.input.SequenceReader
    - org.apache.commons.io.input.XmlStreamReader
  - org.apache.commons.io.input.ReversedLinesFileReader (implements java.io.Closeable)
  - java.nio.file.SimpleFileVisitor<T> (implements java.nio.file.FileVisitor<T>)
    - org.apache.commons.io.file.SimplePathVisitor (implements org.apache.commons.io.file.PathVisitor)
      - org.apache.commons.io.file.CountingPathVisitor
        - org.apache.commons.io.file.AccumulatorPathVisitor
        - org.apache.commons.io.file.CleaningPathVisitor
        - org.apache.commons.io.file.CopyDirectoryVisitor
        - org.apache.commons.io.file.DeletingPathVisitor
      - org.apache.commons.io.file.NoopPathVisitor
  - org.apache.commons.io.comparator.SizeFileComparator (implements java.io.Serializable)
  - org.apache.commons.io.StreamIterator<E> (implements java.lang.AutoCloseable, java.util.Iterator<E>)
  - org.apache.commons.io.input.Tailer (implements java.lang.AutoCloseable, java.lang.Runnable)
  - org.apache.commons.io.input.TailerListenerAdapter (implements org.apache.commons.io.input.TailerListener)
  - org.apache.commons.io.ThreadUtils
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.io.IOException
        - org.apache.commons.io.DirectoryWalker.CancelException
        - org.apache.commons.io.FileExistsException
        - org.apache.commons.io.IOExceptionList (implements java.lang.Iterable<T>)
        - org.apache.commons.io.IOExceptionWithCause
          - org.apache.commons.io.TaggedIOException
        - org.apache.commons.io.IOIndexedException
        - org.apache.commons.io.input.XmlStreamReaderException
  - org.apache.commons.io.filefilter.TrueFileFilter (implements org.apache.commons.io.filefilter.IOFileFilter, java.io.Serializable)
  - org.apache.commons.io.function.Uncheck
  - java.io.Writer (implements java.lang.Appendable, java.io.Closeable, java.io.Flushable)
    - org.apache.commons.io.output.AppendableWriter<T>
    - org.apache.commons.io.output.BrokenWriter
    - org.apache.commons.io.output.ClosedWriter
    - org.apache.commons.io.output.FilterCollectionWriter
      - org.apache.commons.io.output.ProxyCollectionWriter
        - org.apache.commons.io.output.TeeWriter
    - java.io.FilterWriter
      - org.apache.commons.io.output.ChunkedWriter
      - org.apache.commons.io.output.ProxyWriter
        - org.apache.commons.io.output.CloseShieldWriter
        - org.apache.commons.io.output.FileWriterWithEncoding
        - org.apache.commons.io.output.TaggedWriter
      - org.apache.commons.io.output.UncheckedFilterWriter
    - org.apache.commons.io.output.LockableFileWriter
    - org.apache.commons.io.output.NullWriter
    - org.apache.commons.io.output.StringBuilderWriter (implements java.io.Serializable)
    - org.apache.commons.io.output.XmlStreamWriter

## Interface Hierarchy

- org.apache.commons.io.output.AbstractByteArrayOutputStream.InputStreamConstructor<T>
- java.lang.Appendable
  - org.apache.commons.io.output.UncheckedAppendable
- java.lang.AutoCloseable
  - java.io.Closeable
    - org.apache.commons.io.function.IOBaseStream<T,S,B>
      - org.apache.commons.io.function.IOStream<T>
    - org.apache.commons.io.input.Tailer.RandomAccessResourceBridge
- org.apache.commons.io.serialization.ClassNameMatcher
- org.apache.commons.io.filefilter.ConditionalFileFilter
- org.apache.commons.io.file.Counters.Counter
- org.apache.commons.io.file.Counters.PathCounters
- org.apache.commons.io.file.DeleteOption
- org.apache.commons.io.monitor.FileAlterationListener
- java.io.FileFilter
  - org.apache.commons.io.filefilter.IOFileFilter (also extends java.io.FilenameFilter, org.apache.commons.io.file.PathFilter, java.nio.file.PathMatcher)
- java.io.FilenameFilter
  - org.apache.commons.io.filefilter.IOFileFilter (also extends java.io.FileFilter, org.apache.commons.io.file.PathFilter, java.nio.file.PathMatcher)
- java.nio.file.FileVisitor<T>
  - org.apache.commons.io.file.PathVisitor
- org.apache.commons.io.function.IOBiConsumer<T,U>
- org.apache.commons.io.function.IOBiFunction<T,U,R>
  - org.apache.commons.io.function.IOBinaryOperator<T>
- org.apache.commons.io.function.IOComparator<T>
- org.apache.commons.io.function.IOConsumer<T>
- org.apache.commons.io.function.IOFunction<T,R>
  - org.apache.commons.io.function.IOUnaryOperator<T>
- org.apache.commons.io.function.IOIntSupplier
- org.apache.commons.io.function.IOIterator<E>
- org.apache.commons.io.function.IOLongSupplier
- org.apache.commons.io.function.IOPredicate<T>
- org.apache.commons.io.function.IOQuadFunction<T,U,V,W,R>
- org.apache.commons.io.function.IORunnable
- org.apache.commons.io.function.IOSpliterator<T>
- org.apache.commons.io.function.IOSupplier<T>
- org.apache.commons.io.function.IOTriConsumer<T,U,V>
- org.apache.commons.io.function.IOTriFunction<T,U,V,R>
- org.apache.commons.io.file.PathFilter
  - org.apache.commons.io.filefilter.IOFileFilter (also extends java.io.FileFilter, java.io.FilenameFilter, java.nio.file.PathMatcher)
- java.nio.file.PathMatcher
  - org.apache.commons.io.filefilter.IOFileFilter (also extends java.io.FileFilter, java.io.FilenameFilter, org.apache.commons.io.file.PathFilter)
- org.apache.commons.io.input.Tailer.Tailable
- org.apache.commons.io.input.TailerListener

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.apache.commons.io.FileSystem
    - org.apache.commons.io.IOCase
    - org.apache.commons.io.RandomAccessFileMode
    - org.apache.commons.io.file.StandardDeleteOption (implements org.apache.commons.io.file.DeleteOption)
    - org.apache.commons.io.StandardLineSeparator