## Uses of Interface
java.lang.Readable

Packages that use Readable
java.io: Provides for system input and output through data streams, serialization and the file system.
java.nio: Defines buffers, which are containers for data, and provides an overview of the other NIO packages.
java.util: Contains the collections framework, legacy collection classes, event model, date and time facilities, internationalization, and miscellaneous utility classes (a string tokenizer, a random-number generator, and a bit array).

### Uses of Readable in java.io

Classes in java.io that implement Readable
`class` `BufferedReader` Reads text from a character-input stream, buffering characters so as to provide for the efficient reading of characters, arrays, and lines.
`class` `CharArrayReader` This class implements a character buffer that can be used as a character-input stream.
`class` `FileReader` Convenience class for reading character files.
`class` `FilterReader` Abstract class for reading filtered character streams.
`class` `InputStreamReader` An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into characters using a specified `charset`.
`class` `LineNumberReader` A buffered character-input stream that keeps track of line numbers.
`class` `PipedReader` Piped character-input streams.
`class` `PushbackReader` A character-stream reader that allows characters to be pushed back into the stream.
`class` `Reader` Abstract class for reading character streams.
`class` `StringReader` A character stream whose source is a string.

### Uses of Readable in java.nio

Classes in java.nio that implement Readable
`class` `CharBuffer` A char buffer.

### Uses of Readable in java.util

Constructors in java.util with parameters of type Readable
Constructor and Description
`Scanner(Readable source)` Constructs a new `Scanner` that produces values scanned from the specified source.