Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

# AutoCloseable

```
interface AutoCloseable
```

|---|
| [java.lang.AutoCloseable](https://developer.android.com/reference/kotlin/java/lang/AutoCloseable#) |

Known Direct Subclasses [AppInteractionSession](https://developer.android.com/reference/kotlin/android/app/AppInteractionSession.html#), [AssetManager](https://developer.android.com/reference/kotlin/android/content/res/AssetManager.html#), [BaseStream](https://developer.android.com/reference/kotlin/java/util/stream/BaseStream.html#), [BluetoothCsipSetCoordinator](https://developer.android.com/reference/kotlin/android/bluetooth/BluetoothCsipSetCoordinator.html#), [BluetoothLeAudio](https://developer.android.com/reference/kotlin/android/bluetooth/BluetoothLeAudio.html#), [BundleSession](https://developer.android.com/reference/kotlin/android/media/metrics/BundleSession.html#), [CameraCaptureSession](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraCaptureSession.html#), [CameraDevice](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#), [CameraExtensionSession](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraExtensionSession.html#), [Closeable](https://developer.android.com/reference/kotlin/java/io/Closeable.html#), [Connection](https://developer.android.com/reference/kotlin/java/sql/Connection.html#), [ContentCaptureSession](https://developer.android.com/reference/kotlin/android/view/contentcapture/ContentCaptureSession.html#), and 62 others. [AppInteractionSession](https://developer.android.com/reference/kotlin/android/app/AppInteractionSession.html#) Represents an app interaction session.
[AssetManager](https://developer.android.com/reference/kotlin/android/content/res/AssetManager.html#) Provides access to an application's raw asset files; see `https://developer.android.com/reference/kotlin/android/content/res/Resources.html#` for the way most applications will want to retrieve their resource data.
[BaseStream](https://developer.android.com/reference/kotlin/java/util/stream/BaseStream.html#) Base interface for streams, which are sequences of elements supporting sequential and parallel aggregate operations.
[BluetoothCsipSetCoordinator](https://developer.android.com/reference/kotlin/android/bluetooth/BluetoothCsipSetCoordinator.html#) This class provides the public APIs to control the Bluetooth CSIP set coordinator.
[BluetoothLeAudio](https://developer.android.com/reference/kotlin/android/bluetooth/BluetoothLeAudio.html#) This class provides the public APIs to control the LeAudio profile.
[BundleSession](https://developer.android.com/reference/kotlin/android/media/metrics/BundleSession.html#) An instance of this class represents a session with data stored in a bundle.
[CameraCaptureSession](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraCaptureSession.html#) A configured capture session for a `https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#`, used for capturing images from the camera or reprocessing images captured from the camera in the same session previously.
[CameraDevice](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#) The CameraDevice class is a representation of a single camera connected to an Android device, allowing for fine-grain control of image capture and post-processing at high frame rates.
[CameraExtensionSession](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraExtensionSession.html#) A camera capture session that enables access to device-specific camera extensions, which often use multi-frame bursts and sophisticated post-process algorithms for image capture.
[Closeable](https://developer.android.com/reference/kotlin/java/io/Closeable.html#) A `Closeable` is a source or destination of data that can be closed.
[Connection](https://developer.android.com/reference/kotlin/java/sql/Connection.html#) A connection (session) with a specific database.
[ContentCaptureSession](https://developer.android.com/reference/kotlin/android/view/contentcapture/ContentCaptureSession.html#) Session used when notifying the Android system about events associated with views.
[ContentProviderClient](https://developer.android.com/reference/kotlin/android/content/ContentProviderClient.html#) The public interface object used to interact with a specific `https://developer.android.com/reference/kotlin/android/content/ContentProvider.html#`.
[DiscoverySession](https://developer.android.com/reference/kotlin/android/net/wifi/aware/DiscoverySession.html#) A class representing a single publish or subscribe Aware session.
[DngCreator](https://developer.android.com/reference/kotlin/android/hardware/camera2/DngCreator.html#) The `https://developer.android.com/reference/kotlin/android/hardware/camera2/DngCreator.html#` class provides functions to write raw pixel data as a DNG file.
[DrmManagerClient](https://developer.android.com/reference/kotlin/android/drm/DrmManagerClient.html#) The main programming interface for the DRM framework.
[EditingSession](https://developer.android.com/reference/kotlin/android/media/metrics/EditingSession.html#) Represents a session of media editing, for example, transcoding between formats, transmuxing or applying trimming or audio/video effects to a stream.
[ExecutorService](https://developer.android.com/reference/kotlin/java/util/concurrent/ExecutorService.html#) An `https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html#` that provides methods to manage termination and methods that can produce a `https://developer.android.com/reference/kotlin/java/util/concurrent/Future.html#` for tracking progress of one or more asynchronous tasks.
[FileLock](https://developer.android.com/reference/kotlin/java/nio/channels/FileLock.html#) A token representing a lock on a region of a file.
[GroupCall](https://developer.android.com/reference/kotlin/android/telephony/mbms/GroupCall.html#) Class used to represent a single MBMS group call.
[HapticGenerator](https://developer.android.com/reference/kotlin/android/media/audiofx/HapticGenerator.html#) Haptic Generator(HG).
[HardwareBuffer](https://developer.android.com/reference/kotlin/android/hardware/HardwareBuffer.html#) HardwareBuffer wraps a native `AHardwareBuffer` object, which is a low-level object representing a memory buffer accessible by various hardware units.
[HardwareBufferRenderer](https://developer.android.com/reference/kotlin/android/graphics/HardwareBufferRenderer.html#) Creates an instance of a hardware-accelerated renderer.
[HidDevice](https://developer.android.com/reference/kotlin/android/hardware/hid/HidDevice.html#) Represents a Human Interface Device (HID) connected to the system.
[IkeSession](https://developer.android.com/reference/kotlin/android/net/ipsec/ike/IkeSession.html#) This class represents an IKE Session management object that allows for keying and management of `https://developer.android.com/reference/kotlin/android/net/IpSecTransform.html#`s.
[Image](https://developer.android.com/reference/kotlin/android/media/Image.html#) A single complete image buffer to use with a media source such as a `https://developer.android.com/reference/kotlin/android/media/MediaCodec.html#` or a `https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#`.
[ImageDecoder](https://developer.android.com/reference/kotlin/android/graphics/ImageDecoder.html#) A class for converting encoded images (like `PNG`, `JPEG`, `WEBP`, `GIF`, or `HEIF`) into `https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html#` or `https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html#` objects.
[ImageReader](https://developer.android.com/reference/kotlin/android/media/ImageReader.html#) The ImageReader class allows direct application access to image data rendered into a `https://developer.android.com/reference/kotlin/android/view/Surface.html#`
[ImageWriter](https://developer.android.com/reference/kotlin/android/media/ImageWriter.html#) The ImageWriter class allows an application to produce Image data into a `https://developer.android.com/reference/kotlin/android/view/Surface.html#`, and have it be consumed by another component like `https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#`.
[IpSecManager.SecurityParameterIndex](https://developer.android.com/reference/kotlin/android/net/IpSecManager.SecurityParameterIndex.html#) This class represents a reserved SPI.
[IpSecManager.UdpEncapsulationSocket](https://developer.android.com/reference/kotlin/android/net/IpSecManager.UdpEncapsulationSocket.html#) This class provides access to a UDP encapsulation Socket.
[IpSecTransform](https://developer.android.com/reference/kotlin/android/net/IpSecTransform.html#) This class represents a transform, which roughly corresponds to an IPsec Security Association.
[LightsManager.LightsSession](https://developer.android.com/reference/kotlin/android/hardware/lights/LightsManager.LightsSession.html#) Encapsulates a session that can be used to control device lights and represents the lifetime of the requests.
[LocationButtonSession](https://developer.android.com/reference/kotlin/android/app/permissionui/LocationButtonSession.html#) This interface defines location button session, and allows apps to change/customize the appearance of the button.
[LoudnessCodecController](https://developer.android.com/reference/kotlin/android/media/LoudnessCodecController.html#) Class for getting recommended loudness parameter updates for audio decoders as they are used to play back media content according to the encoded format and current audio routing.
[MbmsDownloadSession](https://developer.android.com/reference/kotlin/android/telephony/MbmsDownloadSession.html#) This class provides functionality for file download over MBMS.
[MbmsGroupCallSession](https://developer.android.com/reference/kotlin/android/telephony/MbmsGroupCallSession.html#) This class provides functionality for accessing group call functionality over MBMS.
[MbmsStreamingSession](https://developer.android.com/reference/kotlin/android/telephony/MbmsStreamingSession.html#) This class provides functionality for streaming media over MBMS.
[MediaCas](https://developer.android.com/reference/kotlin/android/media/MediaCas.html#) MediaCas can be used to obtain keys for descrambling protected media streams, in conjunction with `https://developer.android.com/reference/kotlin/android/media/MediaDescrambler.html#`.
[MediaCas.Session](https://developer.android.com/reference/kotlin/android/media/MediaCas.Session.html#) Class for an open session with the CA system.
[MediaController2](https://developer.android.com/reference/kotlin/android/media/MediaController2.html#) This API is not generally intended for third party application developers.
[MediaDescrambler](https://developer.android.com/reference/kotlin/android/media/MediaDescrambler.html#) MediaDescrambler class can be used in conjunction with `https://developer.android.com/reference/kotlin/android/media/MediaCodec.html#` and `https://developer.android.com/reference/kotlin/android/media/MediaExtractor.html#` to decode media data scrambled by conditional access (CA) systems such as those in the ISO/IEC13818-1.
[MediaDrm](https://developer.android.com/reference/kotlin/android/media/MediaDrm.html#) MediaDrm can be used to obtain keys for decrypting protected media streams, in conjunction with `https://developer.android.com/reference/kotlin/android/media/MediaCrypto.html#`.
[MediaMetadataRetriever](https://developer.android.com/reference/kotlin/android/media/MediaMetadataRetriever.html#) MediaMetadataRetriever class provides a unified interface for retrieving frame and meta data from an input media file.
[MediaSession2](https://developer.android.com/reference/kotlin/android/media/MediaSession2.html#) This API is not generally intended for third party application developers.
[MultiResolutionImageReader](https://developer.android.com/reference/kotlin/android/hardware/camera2/MultiResolutionImageReader.html#) The MultiResolutionImageReader class wraps a group of `https://developer.android.com/reference/kotlin/android/media/ImageReader.html#` with the same format and different sizes, source camera Id, or camera sensor modes.
[NetworkStats](https://developer.android.com/reference/kotlin/android/app/usage/NetworkStats.html#) Class providing enumeration over buckets of network usage statistics.
[ObjectInput](https://developer.android.com/reference/kotlin/java/io/ObjectInput.html#) ObjectInput extends the DataInput interface to include the reading of objects.
[ObjectOutput](https://developer.android.com/reference/kotlin/java/io/ObjectOutput.html#) ObjectOutput extends the DataOutput interface to include writing of objects.
[PdfRenderer](https://developer.android.com/reference/kotlin/android/graphics/pdf/PdfRenderer.html#) This class enables rendering a PDF document and selecting, searching, fast scrolling, annotations, etc.
[PdfRenderer.Page](https://developer.android.com/reference/kotlin/android/graphics/pdf/PdfRenderer.Page.html#) This class represents a PDF document page for rendering.
[PdfRendererPreV](https://developer.android.com/reference/kotlin/android/graphics/pdf/PdfRendererPreV.html#) This class enables rendering a PDF document and selecting, searching, fast scrolling, annotations, etc from Android R till Android U.
[PdfRendererPreV.Page](https://developer.android.com/reference/kotlin/android/graphics/pdf/PdfRendererPreV.Page.html#) This class represents a PDF document page for rendering.
[PlaybackSession](https://developer.android.com/reference/kotlin/android/media/metrics/PlaybackSession.html#) An instance of this class represents a session of media playback used to report playback metrics and events.
[Proxy.HttpConnectCallback.Request](https://developer.android.com/reference/kotlin/android/net/http/Proxy.HttpConnectCallback.Request.html#) Represents an HTTP CONNECT request being sent to the proxy server.
[RangingSession](https://developer.android.com/reference/kotlin/android/ranging/RangingSession.html#) Represents a session for performing ranging operations.
[RecordingSession](https://developer.android.com/reference/kotlin/android/media/metrics/RecordingSession.html#) An instances of this class represents a session of media recording.
[ResourcesProvider](https://developer.android.com/reference/kotlin/android/content/res/loader/ResourcesProvider.html#) Provides methods to load resources data from APKs (`.apk`) and resources tables (eg.
[ResultSet](https://developer.android.com/reference/kotlin/java/sql/ResultSet.html#) A table of data representing a database result set, which is usually generated by executing a statement that queries the database.
[SQLiteOpenHelper](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteOpenHelper.html#) A helper class to manage database creation and version management.
[SettingsPreferenceServiceClient](https://developer.android.com/reference/kotlin/android/service/settings/preferences/SettingsPreferenceServiceClient.html#) Client class responsible for binding to and interacting with an instance of `https://developer.android.com/reference/kotlin/android/service/settings/preferences/SettingsPreferenceService.html#`.
[SocketKeepalive](https://developer.android.com/reference/kotlin/android/net/SocketKeepalive.html#) Allows applications to request that the system periodically send specific packets on their behalf, using hardware offload to save battery power.
[Statement](https://developer.android.com/reference/kotlin/java/sql/Statement.html#) The object used for executing a static SQL statement and returning the results it produces.
[StreamingService](https://developer.android.com/reference/kotlin/android/telephony/mbms/StreamingService.html#) Class used to represent a single MBMS stream.
[SubmissionPublisher](https://developer.android.com/reference/kotlin/java/util/concurrent/SubmissionPublisher.html#) A `https://developer.android.com/reference/kotlin/java/util/concurrent/Flow.Publisher.html#` that asynchronously issues submitted (non-null) items to current subscribers until it is closed.
[SyncFence](https://developer.android.com/reference/kotlin/android/hardware/SyncFence.html#) A SyncFence represents a synchronization primitive which signals when hardware units have completed work on a particular resource.
[TranscodingSession](https://developer.android.com/reference/kotlin/android/media/metrics/TranscodingSession.html#) An instances of this class represents a session of media Transcoding.
[TransportHandle](https://developer.android.com/reference/kotlin/android/ranging/oob/TransportHandle.html#) TransportHandle is used as the Out-Of-Band (OOB) transport mechanism by ranging module.
[TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html#) Container for an array of values that were retrieved with `https://developer.android.com/reference/kotlin/android/content/res/Resources.Theme.html#obtainStyledAttributes(android.util.AttributeSet,%20kotlin.IntArray,%20kotlin.Int,%20kotlin.Int)` or `https://developer.android.com/reference/kotlin/android/content/res/Resources.html#obtainAttributes(android.util.AttributeSet,%20kotlin.IntArray)`.
[VolumeShaper](https://developer.android.com/reference/kotlin/android/media/VolumeShaper.html#) The `VolumeShaper` class is used to automatically control audio volume during media playback, allowing simple implementation of transition effects and ducking.
[WifiAwareSession](https://developer.android.com/reference/kotlin/android/net/wifi/aware/WifiAwareSession.html#) This class represents a Wi-Fi Aware session - an attachment to the Wi-Fi Aware service through which the app can execute discovery operations.
[WifiManager.LocalOnlyHotspotReservation](https://developer.android.com/reference/kotlin/android/net/wifi/WifiManager.LocalOnlyHotspotReservation.html#) LocalOnlyHotspotReservation that contains the `https://developer.android.com/reference/kotlin/android/net/wifi/SoftApConfiguration.html#` for the active LocalOnlyHotspot request.
[WifiP2pManager.Channel](https://developer.android.com/reference/kotlin/android/net/wifi/p2p/WifiP2pManager.Channel.html#) A channel that connects the application to the Wifi p2p framework.
[XmlResourceParser](https://developer.android.com/reference/kotlin/android/content/res/XmlResourceParser.html#) The XML parsing interface returned for an XML resource.
Known Indirect Subclasses [AbstractCursor](https://developer.android.com/reference/kotlin/android/database/AbstractCursor.html#), [AbstractExecutorService](https://developer.android.com/reference/kotlin/java/util/concurrent/AbstractExecutorService.html#), [AbstractInterruptibleChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractInterruptibleChannel.html#), [AbstractInterruptibleChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractInterruptibleChannel.html#), [AbstractSelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelectableChannel.html#), [AbstractSelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelectableChannel.html#), [AbstractSelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelectableChannel.html#), [AbstractSelector](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelector.html#), [AbstractWindowedCursor](https://developer.android.com/reference/kotlin/android/database/AbstractWindowedCursor.html#), [AppSearchSession](https://developer.android.com/reference/kotlin/android/app/appsearch/AppSearchSession.html#), [AssetFileDescriptor](https://developer.android.com/reference/kotlin/android/content/res/AssetFileDescriptor.html#), [AssetFileDescriptor.AutoCloseInputStream](https://developer.android.com/reference/kotlin/android/content/res/AssetFileDescriptor.AutoCloseInputStream.html#), and 211 others. [AbstractCursor](https://developer.android.com/reference/kotlin/android/database/AbstractCursor.html#) This is an abstract cursor class that handles a lot of the common code that all cursors need to deal with and is provided for convenience reasons.
[AbstractExecutorService](https://developer.android.com/reference/kotlin/java/util/concurrent/AbstractExecutorService.html#) Provides default implementations of `https://developer.android.com/reference/kotlin/java/util/concurrent/ExecutorService.html#` execution methods.
[AbstractInterruptibleChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractInterruptibleChannel.html#) Base implementation class for interruptible channels.
[AbstractInterruptibleChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractInterruptibleChannel.html#) Base implementation class for interruptible channels.
[AbstractSelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelectableChannel.html#) Base implementation class for selectable channels.
[AbstractSelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelectableChannel.html#) Base implementation class for selectable channels.
[AbstractSelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelectableChannel.html#) Base implementation class for selectable channels.
[AbstractSelector](https://developer.android.com/reference/kotlin/java/nio/channels/spi/AbstractSelector.html#) Base implementation class for selectors.
[AbstractWindowedCursor](https://developer.android.com/reference/kotlin/android/database/AbstractWindowedCursor.html#) A base class for Cursors that store their data in `https://developer.android.com/reference/kotlin/android/database/CursorWindow.html#`s.
[AppSearchSession](https://developer.android.com/reference/kotlin/android/app/appsearch/AppSearchSession.html#) Provides a connection to a single AppSearch database.
[AssetFileDescriptor](https://developer.android.com/reference/kotlin/android/content/res/AssetFileDescriptor.html#) File descriptor of an entry in the AssetManager.
[AssetFileDescriptor.AutoCloseInputStream](https://developer.android.com/reference/kotlin/android/content/res/AssetFileDescriptor.AutoCloseInputStream.html#) An InputStream you can create on a ParcelFileDescriptor, which will take care of calling android.
[AssetFileDescriptor.AutoCloseOutputStream](https://developer.android.com/reference/kotlin/android/content/res/AssetFileDescriptor.AutoCloseOutputStream.html#) An OutputStream you can create on a ParcelFileDescriptor, which will take care of calling android.
[AssetManager.AssetInputStream](https://developer.android.com/reference/kotlin/android/content/res/AssetManager.AssetInputStream.html#) <br />

[AsynchronousByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousByteChannel.html#) An asynchronous channel that can read and write bytes.
[AsynchronousChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousChannel.html#) A channel that supports asynchronous I/O operations.
[AsynchronousFileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousFileChannel.html#) An asynchronous channel for reading, writing, and manipulating a file.
[AsynchronousServerSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousServerSocketChannel.html#) An asynchronous channel for stream-oriented listening sockets.
[AsynchronousServerSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousServerSocketChannel.html#) An asynchronous channel for stream-oriented listening sockets.
[AsynchronousSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousSocketChannel.html#) An asynchronous channel for stream-oriented connecting sockets.
[AsynchronousSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/AsynchronousSocketChannel.html#) An asynchronous channel for stream-oriented connecting sockets.
[BackupDataInputStream](https://developer.android.com/reference/kotlin/android/app/backup/BackupDataInputStream.html#) Provides an `https://developer.android.com/reference/kotlin/java/io/InputStream.html#`-like interface for accessing an entity's data during a restore operation.
[Base64InputStream](https://developer.android.com/reference/kotlin/android/util/Base64InputStream.html#) An InputStream that does Base64 decoding on the data read through it.
[Base64OutputStream](https://developer.android.com/reference/kotlin/android/util/Base64OutputStream.html#) An OutputStream that does Base64 encoding on the data written to it, writing the resulting data to another OutputStream.
[BlobStoreManager.Session](https://developer.android.com/reference/kotlin/android/app/blob/BlobStoreManager.Session.html#) Represents an ongoing session of a blob's contribution to the blob store managed by the system.
[BluetoothServerSocket](https://developer.android.com/reference/kotlin/android/bluetooth/BluetoothServerSocket.html#) A listening Bluetooth socket.
[BluetoothSocket](https://developer.android.com/reference/kotlin/android/bluetooth/BluetoothSocket.html#) A connected or connecting Bluetooth socket.
[BufferedInputStream](https://developer.android.com/reference/kotlin/java/io/BufferedInputStream.html#) A `BufferedInputStream` adds functionality to another input stream-namely, the ability to buffer the input and to support the `mark` and `reset` methods.
[BufferedOutputStream](https://developer.android.com/reference/kotlin/java/io/BufferedOutputStream.html#) The class implements a buffered output stream.
[BufferedReader](https://developer.android.com/reference/kotlin/java/io/BufferedReader.html#) Reads text from a character-input stream, buffering characters so as to provide for the efficient reading of characters, arrays, and lines.
[BufferedWriter](https://developer.android.com/reference/kotlin/java/io/BufferedWriter.html#) Writes text to a character-output stream, buffering characters so as to provide for the efficient writing of single characters, arrays, and strings.
[ByteArrayInputStream](https://developer.android.com/reference/kotlin/java/io/ByteArrayInputStream.html#) A `ByteArrayInputStream` contains an internal buffer that contains bytes that may be read from the stream.
[ByteArrayOutputStream](https://developer.android.com/reference/kotlin/java/io/ByteArrayOutputStream.html#) This class implements an output stream in which the data is written into a byte array.
[ByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ByteChannel.html#) A channel that can read and write bytes.
[ByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ByteChannel.html#) A channel that can read and write bytes.
[CallableStatement](https://developer.android.com/reference/kotlin/java/sql/CallableStatement.html#) The interface used to execute SQL stored procedures.
[CameraConstrainedHighSpeedCaptureSession](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraConstrainedHighSpeedCaptureSession.html#) A constrained high speed capture session for a `https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#`, used for capturing high speed images from the `https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraDevice.html#` for high speed video recording use case.
[CameraOfflineSession](https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraOfflineSession.html#) A camera capture session that was switched to offline mode via successful call to `https://developer.android.com/reference/kotlin/android/hardware/camera2/CameraCaptureSession.html#switchToOffline(kotlin.collections.MutableCollection,%20java.util.concurrent.Executor,%20android.hardware.camera2.CameraOfflineSession.CameraOfflineSessionCallback)`.
[Channel](https://developer.android.com/reference/kotlin/java/nio/channels/Channel.html#) A nexus for I/O operations.
[Channel](https://developer.android.com/reference/kotlin/android/se/omapi/Channel.html#) Instances of this class represent an ISO/IEC 7816-4 channel opened to a Secure Element.
[CharArrayReader](https://developer.android.com/reference/kotlin/java/io/CharArrayReader.html#) This class implements a character buffer that can be used as a character-input stream.
[CharArrayWriter](https://developer.android.com/reference/kotlin/java/io/CharArrayWriter.html#) This class implements a character buffer that can be used as an Writer.
[CheckedInputStream](https://developer.android.com/reference/kotlin/java/util/zip/CheckedInputStream.html#) An input stream that also maintains a checksum of the data being read.
[CheckedOutputStream](https://developer.android.com/reference/kotlin/java/util/zip/CheckedOutputStream.html#) An output stream that also maintains a checksum of the data being written.
[CipherInputStream](https://developer.android.com/reference/kotlin/javax/crypto/CipherInputStream.html#) A CipherInputStream is composed of an InputStream and a Cipher so that read() methods return data that are read in from the underlying InputStream but have been additionally processed by the Cipher.
[CipherOutputStream](https://developer.android.com/reference/kotlin/javax/crypto/CipherOutputStream.html#) A CipherOutputStream is composed of an OutputStream and a Cipher so that write() methods first process the data before writing them out to the underlying OutputStream.
[CrossProcessCursor](https://developer.android.com/reference/kotlin/android/database/CrossProcessCursor.html#) A cross process cursor is an extension of a `https://developer.android.com/reference/kotlin/android/database/Cursor.html#` that also supports usage from remote processes.
[CrossProcessCursorWrapper](https://developer.android.com/reference/kotlin/android/database/CrossProcessCursorWrapper.html#) Cursor wrapper that implements `https://developer.android.com/reference/kotlin/android/database/CrossProcessCursor.html#`.
[CrossProcessCursorWrapper](https://developer.android.com/reference/kotlin/android/database/CrossProcessCursorWrapper.html#) Cursor wrapper that implements `https://developer.android.com/reference/kotlin/android/database/CrossProcessCursor.html#`.
[Cursor](https://developer.android.com/reference/kotlin/android/database/Cursor.html#) This interface provides random read-write access to the result set returned by a database query.
[CursorWindow](https://developer.android.com/reference/kotlin/android/database/CursorWindow.html#) A buffer containing multiple cursor rows.
[CursorWrapper](https://developer.android.com/reference/kotlin/android/database/CursorWrapper.html#) Wrapper class for Cursor that delegates all calls to the actual cursor object.
[DataInputStream](https://developer.android.com/reference/kotlin/java/io/DataInputStream.html#) A data input stream lets an application read primitive Java data types from an underlying input stream in a machine-independent way.
[DataOutputStream](https://developer.android.com/reference/kotlin/java/io/DataOutputStream.html#) A data output stream lets an application write primitive Java data types to an output stream in a portable way.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramChannel](https://developer.android.com/reference/kotlin/java/nio/channels/DatagramChannel.html#) A selectable channel for datagram-oriented sockets.
[DatagramSocket](https://developer.android.com/reference/kotlin/java/net/DatagramSocket.html#) This class represents a socket for sending and receiving datagram packets.
[DeflaterInputStream](https://developer.android.com/reference/kotlin/java/util/zip/DeflaterInputStream.html#) Implements an input stream filter for compressing data in the "deflate" compression format.
[DeflaterOutputStream](https://developer.android.com/reference/kotlin/java/util/zip/DeflaterOutputStream.html#) This class implements an output stream filter for compressing data in the "deflate" compression format.
[DigestInputStream](https://developer.android.com/reference/kotlin/java/security/DigestInputStream.html#) A transparent stream that updates the associated message digest using the bits going through the stream.
[DigestOutputStream](https://developer.android.com/reference/kotlin/java/security/DigestOutputStream.html#) A transparent stream that updates the associated message digest using the bits going through the stream.
[DirectoryStream](https://developer.android.com/reference/kotlin/java/nio/file/DirectoryStream.html#) An object to iterate over the entries in a directory.
[DoubleStream](https://developer.android.com/reference/kotlin/java/util/stream/DoubleStream.html#) A sequence of primitive double-valued elements supporting sequential and parallel aggregate operations.
[DropBoxManager.Entry](https://developer.android.com/reference/kotlin/android/os/DropBoxManager.Entry.html#) A single entry retrieved from the drop box.
[FileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/FileChannel.html#) A channel for reading, writing, mapping, and manipulating a file.
[FileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/FileChannel.html#) A channel for reading, writing, mapping, and manipulating a file.
[FileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/FileChannel.html#) A channel for reading, writing, mapping, and manipulating a file.
[FileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/FileChannel.html#) A channel for reading, writing, mapping, and manipulating a file.
[FileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/FileChannel.html#) A channel for reading, writing, mapping, and manipulating a file.
[FileChannel](https://developer.android.com/reference/kotlin/java/nio/channels/FileChannel.html#) A channel for reading, writing, mapping, and manipulating a file.
[FileInputStream](https://developer.android.com/reference/kotlin/java/io/FileInputStream.html#) A `FileInputStream` obtains input bytes from a file in a file system.
[FileOutputStream](https://developer.android.com/reference/kotlin/java/io/FileOutputStream.html#) A file output stream is an output stream for writing data to a `File` or to a `FileDescriptor`.
[FileReader](https://developer.android.com/reference/kotlin/java/io/FileReader.html#) Reads text from character files using a default buffer size.
[FileSystem](https://developer.android.com/reference/kotlin/java/nio/file/FileSystem.html#) Provides an interface to a file system and is the factory for objects to access files and other objects in the file system.
[FileWriter](https://developer.android.com/reference/kotlin/java/io/FileWriter.html#) Writes text to character files using a default buffer size.
[FilterInputStream](https://developer.android.com/reference/kotlin/java/io/FilterInputStream.html#) A `FilterInputStream` contains some other input stream, which it uses as its basic source of data, possibly transforming the data along the way or providing additional functionality.
[FilterOutputStream](https://developer.android.com/reference/kotlin/java/io/FilterOutputStream.html#) This class is the superclass of all classes that filter output streams.
[FilterReader](https://developer.android.com/reference/kotlin/java/io/FilterReader.html#) Abstract class for reading filtered character streams.
[FilterWriter](https://developer.android.com/reference/kotlin/java/io/FilterWriter.html#) Abstract class for writing filtered character streams.
[ForkJoinPool](https://developer.android.com/reference/kotlin/java/util/concurrent/ForkJoinPool.html#) An `https://developer.android.com/reference/kotlin/java/util/concurrent/ExecutorService.html#` for running `https://developer.android.com/reference/kotlin/java/util/concurrent/ForkJoinTask.html#`s.
[Formatter](https://developer.android.com/reference/kotlin/java/util/Formatter.html#) An interpreter for printf-style format strings.
[GZIPInputStream](https://developer.android.com/reference/kotlin/java/util/zip/GZIPInputStream.html#) This class implements a stream filter for reading compressed data in the GZIP file format.
[GZIPOutputStream](https://developer.android.com/reference/kotlin/java/util/zip/GZIPOutputStream.html#) This class implements a stream filter for writing compressed data in the GZIP file format.
[GatheringByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/GatheringByteChannel.html#) A channel that can write bytes from a sequence of buffers.
[GlobalSearchSession](https://developer.android.com/reference/kotlin/android/app/appsearch/GlobalSearchSession.html#) Provides a connection to all AppSearch databases the querying application has been granted access to.
[HttpResponseCache](https://developer.android.com/reference/kotlin/android/net/http/HttpResponseCache.html#) Caches HTTP and HTTPS responses to the filesystem so they may be reused, saving time and bandwidth.
[InflaterInputStream](https://developer.android.com/reference/kotlin/java/util/zip/InflaterInputStream.html#) This class implements a stream filter for uncompressing data in the "deflate" compression format.
[InflaterOutputStream](https://developer.android.com/reference/kotlin/java/util/zip/InflaterOutputStream.html#) Implements an output stream filter for uncompressing data stored in the "deflate" compression format.
[InputStream](https://developer.android.com/reference/kotlin/java/io/InputStream.html#) This abstract class is the superclass of all classes representing an input stream of bytes.
[InputStreamReader](https://developer.android.com/reference/kotlin/java/io/InputStreamReader.html#) An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into characters using a specified `https://developer.android.com/reference/kotlin/java/nio/charset/Charset.html#`.
[IntStream](https://developer.android.com/reference/kotlin/java/util/stream/IntStream.html#) A sequence of primitive int-valued elements supporting sequential and parallel aggregate operations.
[InterruptibleChannel](https://developer.android.com/reference/kotlin/java/nio/channels/InterruptibleChannel.html#) A channel that can be asynchronously closed and interrupted.
[IsoDep](https://developer.android.com/reference/kotlin/android/nfc/tech/IsoDep.html#) Provides access to ISO-DEP (ISO 14443-4) properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[JarFile](https://developer.android.com/reference/kotlin/java/util/jar/JarFile.html#) The `JarFile` class is used to read the contents of a jar file from any file that can be opened with `java.io.RandomAccessFile`.
[JarInputStream](https://developer.android.com/reference/kotlin/java/util/jar/JarInputStream.html#) The `JarInputStream` class is used to read the contents of a JAR file from any input stream.
[JarOutputStream](https://developer.android.com/reference/kotlin/java/util/jar/JarOutputStream.html#) The `JarOutputStream` class is used to write the contents of a JAR file to any output stream.
[JsonReader](https://developer.android.com/reference/kotlin/android/util/JsonReader.html#) Reads a JSON ([RFC 4627](http://www.ietf.org/rfc/rfc4627.txt)) encoded value as a stream of tokens.
[JsonWriter](https://developer.android.com/reference/kotlin/android/util/JsonWriter.html#) Writes a JSON ([RFC 4627](http://www.ietf.org/rfc/rfc4627.txt)) encoded value to a stream, one token at a time.
[LineNumberInputStream](https://developer.android.com/reference/kotlin/java/io/LineNumberInputStream.html#) This class is an input stream filter that provides the added functionality of keeping track of the current line number.
[LineNumberReader](https://developer.android.com/reference/kotlin/java/io/LineNumberReader.html#) A buffered character-input stream that keeps track of line numbers.
[LocalServerSocket](https://developer.android.com/reference/kotlin/android/net/LocalServerSocket.html#) Non-standard class for creating an inbound UNIX-domain socket in the Linux abstract namespace.
[LocalSocket](https://developer.android.com/reference/kotlin/android/net/LocalSocket.html#) Creates a (non-server) socket in the UNIX-domain namespace.
[LongStream](https://developer.android.com/reference/kotlin/java/util/stream/LongStream.html#) A sequence of primitive long-valued elements supporting sequential and parallel aggregate operations.
[MatrixCursor](https://developer.android.com/reference/kotlin/android/database/MatrixCursor.html#) A mutable cursor implementation backed by an array of `Object`s.
[MediaDataSource](https://developer.android.com/reference/kotlin/android/media/MediaDataSource.html#) For supplying media data to the framework.
[MergeCursor](https://developer.android.com/reference/kotlin/android/database/MergeCursor.html#) A convenience class that lets you present an array of Cursors as a single linear Cursor.
[MidiDevice](https://developer.android.com/reference/kotlin/android/media/midi/MidiDevice.html#) This class is used for sending and receiving data to and from a MIDI device Instances of this class are created by `https://developer.android.com/reference/kotlin/android/media/midi/MidiManager.html#openDevice(android.media.midi.MidiDeviceInfo,%20android.media.midi.MidiManager.OnDeviceOpenedListener,%20android.os.Handler)`.
[MidiDevice.MidiConnection](https://developer.android.com/reference/kotlin/android/media/midi/MidiDevice.MidiConnection.html#) This class represents a connection between the output port of one device and the input port of another.
[MidiInputPort](https://developer.android.com/reference/kotlin/android/media/midi/MidiInputPort.html#) This class is used for sending data to a port on a MIDI device
[MidiOutputPort](https://developer.android.com/reference/kotlin/android/media/midi/MidiOutputPort.html#) This class is used for receiving data from a port on a MIDI device
[MifareClassic](https://developer.android.com/reference/kotlin/android/nfc/tech/MifareClassic.html#) Provides access to MIFARE Classic properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[MifareUltralight](https://developer.android.com/reference/kotlin/android/nfc/tech/MifareUltralight.html#) Provides access to MIFARE Ultralight properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[MockCursor](https://developer.android.com/reference/kotlin/android/test/mock/MockCursor.html#) A mock `https://developer.android.com/reference/kotlin/android/database/Cursor.html#` class that isolates the test code from real Cursor implementation.
[MulticastChannel](https://developer.android.com/reference/kotlin/java/nio/channels/MulticastChannel.html#) A network channel that supports Internet Protocol (IP) multicasting.
[MulticastSocket](https://developer.android.com/reference/kotlin/java/net/MulticastSocket.html#) The multicast datagram socket class is useful for sending and receiving IP multicast packets.
[Ndef](https://developer.android.com/reference/kotlin/android/nfc/tech/Ndef.html#) Provides access to NDEF content and operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[NdefFormatable](https://developer.android.com/reference/kotlin/android/nfc/tech/NdefFormatable.html#) Provide access to NDEF format operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[NetworkChannel](https://developer.android.com/reference/kotlin/java/nio/channels/NetworkChannel.html#) A channel to a network socket.
[NfcA](https://developer.android.com/reference/kotlin/android/nfc/tech/NfcA.html#) Provides access to NFC-A (ISO 14443-3A) properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[NfcB](https://developer.android.com/reference/kotlin/android/nfc/tech/NfcB.html#) Provides access to NFC-B (ISO 14443-3B) properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[NfcBarcode](https://developer.android.com/reference/kotlin/android/nfc/tech/NfcBarcode.html#) Provides access to tags containing just a barcode.
[NfcF](https://developer.android.com/reference/kotlin/android/nfc/tech/NfcF.html#) Provides access to NFC-F (JIS 6319-4) properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[NfcV](https://developer.android.com/reference/kotlin/android/nfc/tech/NfcV.html#) Provides access to NFC-V (ISO 15693) properties and I/O operations on a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`.
[ObjectInputStream](https://developer.android.com/reference/kotlin/java/io/ObjectInputStream.html#) An ObjectInputStream deserializes primitive data and objects previously written using an ObjectOutputStream.
[ObjectInputStream](https://developer.android.com/reference/kotlin/java/io/ObjectInputStream.html#) An ObjectInputStream deserializes primitive data and objects previously written using an ObjectOutputStream.
[ObjectOutputStream](https://developer.android.com/reference/kotlin/java/io/ObjectOutputStream.html#) An ObjectOutputStream writes primitive data types and graphs of Java objects to an OutputStream.
[ObjectOutputStream](https://developer.android.com/reference/kotlin/java/io/ObjectOutputStream.html#) An ObjectOutputStream writes primitive data types and graphs of Java objects to an OutputStream.
[OpenBlobForReadResponse](https://developer.android.com/reference/kotlin/android/app/appsearch/OpenBlobForReadResponse.html#) The response to provide batch operation results of `https://developer.android.com/reference/kotlin/android/app/appsearch/AppSearchSession.html#openBlobForRead(kotlin.collections.MutableSet,%20java.util.concurrent.Executor,%20java.util.function.Consumer)`.
[OpenBlobForWriteResponse](https://developer.android.com/reference/kotlin/android/app/appsearch/OpenBlobForWriteResponse.html#) The response to provide batch operation results of `https://developer.android.com/reference/kotlin/android/app/appsearch/AppSearchSession.html#openBlobForWrite(kotlin.collections.MutableSet,%20java.util.concurrent.Executor,%20java.util.function.Consumer)`.
[OutputStream](https://developer.android.com/reference/kotlin/java/io/OutputStream.html#) This abstract class is the superclass of all classes representing an output stream of bytes.
[OutputStreamWriter](https://developer.android.com/reference/kotlin/java/io/OutputStreamWriter.html#) An OutputStreamWriter is a bridge from character streams to byte streams: Characters written to it are encoded into bytes using a specified `https://developer.android.com/reference/kotlin/java/nio/charset/Charset.html#`.
[PackageInstaller.Session](https://developer.android.com/reference/kotlin/android/content/pm/PackageInstaller.Session.html#) An installation that is being actively staged.
[ParcelFileDescriptor](https://developer.android.com/reference/kotlin/android/os/ParcelFileDescriptor.html#) The FileDescriptor returned by `https://developer.android.com/reference/kotlin/android/os/Parcel.html#readFileDescriptor()`, allowing you to close it when done with it.
[ParcelFileDescriptor.AutoCloseInputStream](https://developer.android.com/reference/kotlin/android/os/ParcelFileDescriptor.AutoCloseInputStream.html#) An InputStream you can create on a ParcelFileDescriptor, which will take care of calling android.
[ParcelFileDescriptor.AutoCloseOutputStream](https://developer.android.com/reference/kotlin/android/os/ParcelFileDescriptor.AutoCloseOutputStream.html#) An OutputStream you can create on a ParcelFileDescriptor, which will take care of calling android.
[PerformanceHintManager.Session](https://developer.android.com/reference/kotlin/android/os/PerformanceHintManager.Session.html#) A Session represents a group of threads with an inter-related workload such that hints for their performance should be considered as a unit.
[Pipe.SinkChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SinkChannel.html#) A channel representing the writable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SinkChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SinkChannel.html#) A channel representing the writable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SinkChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SinkChannel.html#) A channel representing the writable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SinkChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SinkChannel.html#) A channel representing the writable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SinkChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SinkChannel.html#) A channel representing the writable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SourceChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SourceChannel.html#) A channel representing the readable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SourceChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SourceChannel.html#) A channel representing the readable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SourceChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SourceChannel.html#) A channel representing the readable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SourceChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SourceChannel.html#) A channel representing the readable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[Pipe.SourceChannel](https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.SourceChannel.html#) A channel representing the readable end of a `https://developer.android.com/reference/kotlin/java/nio/channels/Pipe.html#`.
[PipedInputStream](https://developer.android.com/reference/kotlin/java/io/PipedInputStream.html#) A piped input stream should be connected to a piped output stream; the piped input stream then provides whatever data bytes are written to the piped output stream.
[PipedOutputStream](https://developer.android.com/reference/kotlin/java/io/PipedOutputStream.html#) A piped output stream can be connected to a piped input stream to create a communications pipe.
[PipedReader](https://developer.android.com/reference/kotlin/java/io/PipedReader.html#) Piped character-input streams.
[PipedWriter](https://developer.android.com/reference/kotlin/java/io/PipedWriter.html#) Piped character-output streams.
[PreparedStatement](https://developer.android.com/reference/kotlin/java/sql/PreparedStatement.html#) An object that represents a precompiled SQL statement.
[PrintStream](https://developer.android.com/reference/kotlin/java/io/PrintStream.html#) A `PrintStream` adds functionality to another output stream, namely the ability to print representations of various data values conveniently.
[PrintStream](https://developer.android.com/reference/kotlin/java/io/PrintStream.html#) A `PrintStream` adds functionality to another output stream, namely the ability to print representations of various data values conveniently.
[PrintWriter](https://developer.android.com/reference/kotlin/java/io/PrintWriter.html#) Prints formatted representations of objects to a text-output stream.
[PublishDiscoverySession](https://developer.android.com/reference/kotlin/android/net/wifi/aware/PublishDiscoverySession.html#) A class representing a Aware publish session.
[PushbackInputStream](https://developer.android.com/reference/kotlin/java/io/PushbackInputStream.html#) A `PushbackInputStream` adds functionality to another input stream, namely the ability to "push back" or "unread" bytes, by storing pushed-back bytes in an internal buffer.
[PushbackReader](https://developer.android.com/reference/kotlin/java/io/PushbackReader.html#) A character-stream reader that allows characters to be pushed back into the stream.
[RandomAccessFile](https://developer.android.com/reference/kotlin/java/io/RandomAccessFile.html#) Instances of this class support both reading and writing to a random access file.
[ReadableByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ReadableByteChannel.html#) A channel that can read bytes.
[Reader](https://developer.android.com/reference/kotlin/java/io/Reader.html#) Abstract class for reading character streams.
[ResourcesProvider](https://developer.android.com/reference/kotlin/android/content/res/loader/ResourcesProvider.html#) Provides methods to load resources data from APKs (`.apk`) and resources tables (eg.
[RowSet](https://developer.android.com/reference/kotlin/javax/sql/RowSet.html#) The interface that adds support to the JDBC API for the JavaBeansTM component model.
[SQLiteClosable](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteClosable.html#) An object created from a SQLiteDatabase that can be closed.
[SQLiteCursor](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteCursor.html#) A Cursor implementation that exposes results from a query on a `https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html#`.
[SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html#) Exposes methods to manage a SQLite database.
[SQLiteProgram](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteProgram.html#) A base class for compiled SQLite programs.
[SQLiteQuery](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteQuery.html#) Represents a query that reads the resulting rows into a `https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteQuery.html#`.
[SQLiteRawStatement](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteRawStatement.html#) A represents a SQLite prepared statement.
[SQLiteStatement](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteStatement.html#) Represents a statement that can be executed against a database.
[SSLServerSocket](https://developer.android.com/reference/kotlin/javax/net/ssl/SSLServerSocket.html#) This class extends `ServerSocket`s and provides secure server sockets using protocols such as the Secure Sockets Layer (SSL) or Transport Layer Security (TLS) protocols.
[SSLSocket](https://developer.android.com/reference/kotlin/javax/net/ssl/SSLSocket.html#) This class extends `Socket`s and provides secure socket using protocols such as the "Secure Sockets Layer" (SSL) or IETF "Transport Layer Security" (TLS) protocols.
[Scanner](https://developer.android.com/reference/kotlin/java/util/Scanner.html#) A simple text scanner which can parse primitive types and strings using regular expressions.
[ScatteringByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ScatteringByteChannel.html#) A channel that can read bytes into a sequence of buffers.
[ScheduledExecutorService](https://developer.android.com/reference/kotlin/java/util/concurrent/ScheduledExecutorService.html#) An `https://developer.android.com/reference/kotlin/java/util/concurrent/ExecutorService.html#` that can schedule commands to run after a given delay, or to execute periodically.
[ScheduledThreadPoolExecutor](https://developer.android.com/reference/kotlin/java/util/concurrent/ScheduledThreadPoolExecutor.html#) A `https://developer.android.com/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.html#` that can additionally schedule commands to run after a given delay, or to execute periodically.
[ScheduledThreadPoolExecutor](https://developer.android.com/reference/kotlin/java/util/concurrent/ScheduledThreadPoolExecutor.html#) A `https://developer.android.com/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.html#` that can additionally schedule commands to run after a given delay, or to execute periodically.
[SearchResults](https://developer.android.com/reference/kotlin/android/app/appsearch/SearchResults.html#) Encapsulates results of a search operation.
[SecureDirectoryStream](https://developer.android.com/reference/kotlin/java/nio/file/SecureDirectoryStream.html#) A `DirectoryStream` that defines operations on files that are located relative to an open directory.
[SeekableByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SeekableByteChannel.html#) A byte channel that maintains a current *position* and allows the position to be changed.
[SeekableByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SeekableByteChannel.html#) A byte channel that maintains a current *position* and allows the position to be changed.
[SelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SelectableChannel.html#) A channel that can be multiplexed via a `https://developer.android.com/reference/kotlin/java/nio/channels/Selector.html#`.
[SelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SelectableChannel.html#) A channel that can be multiplexed via a `https://developer.android.com/reference/kotlin/java/nio/channels/Selector.html#`.
[SelectableChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SelectableChannel.html#) A channel that can be multiplexed via a `https://developer.android.com/reference/kotlin/java/nio/channels/Selector.html#`.
[Selector](https://developer.android.com/reference/kotlin/java/nio/channels/Selector.html#) A multiplexor of `https://developer.android.com/reference/kotlin/java/nio/channels/SelectableChannel.html#` objects.
[SensorDirectChannel](https://developer.android.com/reference/kotlin/android/hardware/SensorDirectChannel.html#) Class representing a sensor direct channel.
[SequenceInputStream](https://developer.android.com/reference/kotlin/java/io/SequenceInputStream.html#) A `SequenceInputStream` represents the logical concatenation of other input streams.
[ServerSocket](https://developer.android.com/reference/kotlin/java/net/ServerSocket.html#) This class implements server sockets.
[ServerSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ServerSocketChannel.html#) A selectable channel for stream-oriented listening sockets.
[ServerSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ServerSocketChannel.html#) A selectable channel for stream-oriented listening sockets.
[ServerSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ServerSocketChannel.html#) A selectable channel for stream-oriented listening sockets.
[ServerSocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/ServerSocketChannel.html#) A selectable channel for stream-oriented listening sockets.
[SharedMemory](https://developer.android.com/reference/kotlin/android/os/SharedMemory.html#) SharedMemory enables the creation, mapping, and protection control over anonymous shared memory.
[Socket](https://developer.android.com/reference/kotlin/java/net/Socket.html#) This class implements client sockets (also called just "sockets").
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[SocketChannel](https://developer.android.com/reference/kotlin/java/nio/channels/SocketChannel.html#) A selectable channel for stream-oriented connecting sockets.
[Stream](https://developer.android.com/reference/kotlin/java/util/stream/Stream.html#) A sequence of elements supporting sequential and parallel aggregate operations.
[StringBufferInputStream](https://developer.android.com/reference/kotlin/java/io/StringBufferInputStream.html#) This class allows an application to create an input stream in which the bytes read are supplied by the contents of a string.
[StringReader](https://developer.android.com/reference/kotlin/java/io/StringReader.html#) A character stream whose source is a string.
[StringWriter](https://developer.android.com/reference/kotlin/java/io/StringWriter.html#) A character stream that collects its output in a string buffer, which can then be used to construct a string.
[SubscribeDiscoverySession](https://developer.android.com/reference/kotlin/android/net/wifi/aware/SubscribeDiscoverySession.html#) A class representing a Aware subscribe session.
[SurfaceControl.Transaction](https://developer.android.com/reference/kotlin/android/view/SurfaceControl.Transaction.html#) An atomic set of changes to a set of SurfaceControl.
[TagTechnology](https://developer.android.com/reference/kotlin/android/nfc/tech/TagTechnology.html#) is an interface to a technology in a `https://developer.android.com/reference/kotlin/android/nfc/Tag.html#`
[ThreadPoolExecutor](https://developer.android.com/reference/kotlin/java/util/concurrent/ThreadPoolExecutor.html#) An `https://developer.android.com/reference/kotlin/java/util/concurrent/ExecutorService.html#` that executes each submitted task using one of possibly several pooled threads, normally configured using `https://developer.android.com/reference/kotlin/java/util/concurrent/Executors.html#` factory methods.
[URLClassLoader](https://developer.android.com/reference/kotlin/java/net/URLClassLoader.html#) This class loader is used to load classes and resources from a search path of URLs referring to both JAR files and directories.
[UploadDataProvider](https://developer.android.com/reference/kotlin/android/net/http/UploadDataProvider.html#) Abstract class allowing the embedder to provide an upload body to `https://developer.android.com/reference/kotlin/android/net/http/UrlRequest.html#`.
[WatchService](https://developer.android.com/reference/kotlin/java/nio/file/WatchService.html#) A watch service that *watches* registered objects for changes and events.
[WritableByteChannel](https://developer.android.com/reference/kotlin/java/nio/channels/WritableByteChannel.html#) A channel that can write bytes.
[Writer](https://developer.android.com/reference/kotlin/java/io/Writer.html#) Abstract class for writing to character streams.
[ZipFile](https://developer.android.com/reference/kotlin/java/util/zip/ZipFile.html#) This class is used to read entries from a zip file.
[ZipInputStream](https://developer.android.com/reference/kotlin/java/util/zip/ZipInputStream.html#) This class implements an input stream filter for reading files in the ZIP file format.
[ZipOutputStream](https://developer.android.com/reference/kotlin/java/util/zip/ZipOutputStream.html#) This class implements an output stream filter for writing files in the ZIP file format.

An object that may hold resources (such as file or socket handles) until it is closed. The `https://developer.android.com/reference/kotlin/java/lang/AutoCloseable#close()` method of an `AutoCloseable` object is called automatically when exiting a `try`-with-resources block for which the object has been declared in the resource specification header. This construction ensures prompt release, avoiding resource exhaustion exceptions and errors that may otherwise occur.

## Summary

| Public methods ||
|---|---|
| abstract [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | `https://developer.android.com/reference/kotlin/java/lang/AutoCloseable#close()()` Closes this resource, relinquishing any underlying resources. |

## Public methods

### close

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

```
abstract fun close(): Unit
```

Closes this resource, relinquishing any underlying resources. This method is invoked automatically on objects managed by the `try`-with-resources statement.

| Exceptions ||
|---|---|
| `java.lang.Exception` | if this resource cannot be closed |