---
title: Виды потоков ввода/вывода
seo:
  title: Виды потоков ввода/вывода — Java Developer
  description: Тема «Виды потоков ввода/вывода» для собеседования Java Developer. Какие существуют виды потоков ввода/вывода? В каких пакетах расположены классы потоков ввода/вывода?
---

[Все темы Java Developer](/java-developer)

## <strong>Какие существуют виды потоков ввода/вывода?</strong> [#q-14bee738d69b81ed9e8ee3701ce16cd8]

Существуют следующие виды потоков ввода/вывода в Java&#58;

{/* prettier-ignore */}
1. <strong>Байтовые потоки</strong>&#58;

    - <strong>InputStream</strong>&#58; Абстрактный класс для чтения байтов.

        - Примеры&#58; <code>FileInputStream</code>, <code>ByteArrayInputStream</code>

    - <strong>OutputStream</strong>&#58; Абстрактный класс для записи байтов.

        - Примеры&#58; <code>FileOutputStream</code>, <code>ByteArrayOutputStream</code>

1. <strong>Символьные потоки</strong>&#58;

    - <strong>Reader</strong>&#58; Абстрактный класс для чтения символов.

        - Примеры&#58; <code>FileReader</code>, <code>BufferedReader</code>, <code>InputStreamReader</code>

    - <strong>Writer</strong>&#58; Абстрактный класс для записи символов.

        - Примеры&#58; <code>FileWriter</code>, <code>BufferedWriter</code>, <code>OutputStreamWriter</code>

1. <strong>Потоки обработки (фильтры)</strong>&#58;

    - <strong>FilterInputStream</strong>&#58; Абстрактный класс для фильтров байтовых потоков.

        - Примеры&#58; <code>BufferedInputStream</code>, <code>DataInputStream</code>

    - <strong>FilterOutputStream</strong>&#58; Абстрактный класс для фильтров байтовых потоков.

        - Примеры&#58; <code>BufferedOutputStream</code>, <code>DataOutputStream</code>

    - <strong>FilterReader</strong>&#58; Абстрактный класс для фильтров символьных потоков.

        - Примеры&#58; <code>BufferedReader</code>, <code>PushbackReader</code>

    - <strong>FilterWriter</strong>&#58; Абстрактный класс для фильтров символьных потоков.

        - Примеры&#58; <code>BufferedWriter</code>, <code>PrintWriter</code>

:::note[Ссылки для изучения]

1. [Потоки ввода/вывода в Java](https://javarush.com/quests/lectures/questcore.level08.lecture01)
   :::

---

## <strong>В каких пакетах расположены классы потоков ввода/вывода?</strong> [#q-14bee738d69b812faa40c5a28fa634a8]

Классы потоков ввода/вывода в Java расположены в следующих пакетах&#58;

{/* prettier-ignore */}
1. <code>java&#46;io</code>&#58;

    - Байтовые потоки&#58; <code>InputStream</code>, <code>OutputStream</code> и их подклассы.

    - Символьные потоки&#58; <code>Reader</code>, <code>Writer</code> и их подклассы.

    - Потоки обработки (фильтры)&#58; <code>FilterInputStream</code>, <code>FilterOutputStream</code>, <code>FilterReader</code>, <code>FilterWriter</code> и их подклассы.

1. <code>java&#46;nio</code>&#58;

    - Неблокирующие ввод-вывод&#58; <code>Channel</code>, <code>Buffer</code>, <code>Charset</code>, <code>Selector</code> и их подклассы.

:::note[Ссылки для изучения]

1. [Потоки ввода/вывода в Java](https://javarush.com/quests/lectures/questcore.level08.lecture01)
   :::
