Uses of Interface java.nio.channels.Channel (Java SE 12 & JDK 12 )

## Uses of Interface
java.nio.channels.Channel

- Packages that use Channel
  Package | Description
  --- | ---
  com.sun.nio.sctp | A Java API for Stream Control Transport Protocol.
  java.lang | Provides classes that are fundamental to the design of the Java programming language.
  java.nio.channels | Defines channels, which represent connections to entities that are capable of performing I/O operations, such as files and sockets; defines selectors, for multiplexed, non-blocking I/O operations.
  java.nio.channels.spi | Service-provider classes for the `java.nio.channels` package.

- - ### Uses of Channel in com.sun.nio.sctp

    Classes in com.sun.nio.sctp that implement Channel
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SctpChannel` | A selectable channel for message-oriented connected SCTP sockets.
    `class` | `SctpMultiChannel` | A selectable channel for message-oriented SCTP sockets.
    `class` | `SctpServerChannel` | A selectable channel for message-oriented listening SCTP sockets.

  - ### Uses of Channel in java.lang

    Methods in java.lang that return Channel
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Channel` | System.`inheritedChannel()` | Returns the channel inherited from the entity that created this Java virtual machine.

  - ### Uses of Channel in java.nio.channels

    Subinterfaces of Channel in java.nio.channels
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `AsynchronousByteChannel` | An asynchronous channel that can read and write bytes.
    `interface` | `AsynchronousChannel` | A channel that supports asynchronous I/O operations.
    `interface` | `ByteChannel` | A channel that can read and write bytes.
    `interface` | `GatheringByteChannel` | A channel that can write bytes from a sequence of buffers.
    `interface` | `InterruptibleChannel` | A channel that can be asynchronously closed and interrupted.
    `interface` | `MulticastChannel` | A network channel that supports Internet Protocol (IP) multicasting.
    `interface` | `NetworkChannel` | A channel to a network socket.
    `interface` | `ReadableByteChannel` | A channel that can read bytes.
    `interface` | `ScatteringByteChannel` | A channel that can read bytes into a sequence of buffers.
    `interface` | `SeekableByteChannel` | A byte channel that maintains a current position and allows the position to be changed.
    `interface` | `WritableByteChannel` | A channel that can write bytes.

    Classes in java.nio.channels that implement Channel
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AsynchronousFileChannel` | An asynchronous channel for reading, writing, and manipulating a file.
    `class` | `AsynchronousServerSocketChannel` | An asynchronous channel for stream-oriented listening sockets.
    `class` | `AsynchronousSocketChannel` | An asynchronous channel for stream-oriented connecting sockets.
    `class` | `DatagramChannel` | A selectable channel for datagram-oriented sockets.
    `class` | `FileChannel` | A channel for reading, writing, mapping, and manipulating a file.
    `static class` | `Pipe.SinkChannel` | A channel representing the writable end of a `Pipe`.
    `static class` | `Pipe.SourceChannel` | A channel representing the readable end of a `Pipe`.
    `class` | `SelectableChannel` | A channel that can be multiplexed via a `Selector`.
    `class` | `ServerSocketChannel` | A selectable channel for stream-oriented listening sockets.
    `class` | `SocketChannel` | A selectable channel for stream-oriented connecting sockets.

    Methods in java.nio.channels that return Channel
    Modifier and Type | Method | Description
    --- | --- | ---
    `Channel` | FileLock.`acquiredBy()` | Returns the channel upon whose file this lock was acquired.

  - ### Uses of Channel in java.nio.channels.spi

    Classes in java.nio.channels.spi that implement Channel
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractInterruptibleChannel` | Base implementation class for interruptible channels.
    `class` | `AbstractSelectableChannel` | Base implementation class for selectable channels.

    Methods in java.nio.channels.spi that return Channel
    Modifier and Type | Method | Description
    --- | --- | ---
    `Channel` | SelectorProvider.`inheritedChannel()` | Returns the channel inherited from the entity that created this Java virtual machine.