Встречается на собеседованиях • сегодня

Что такое понятие канал

Канал (Channel) в Java — это интерфейс из пакета java.nio, представляющий двусторонний канал для передачи данных между источниками (например, файлами, сокетами). Он является частью NIO (New I/O) и обеспечивает неблокирующий ввод-вывод.

Основные реализации:

  • FileChannel — работа с файлами,
  • SocketChannel и ServerSocketChannel — сетевые сокеты,
  • DatagramChannel — UDP-соединения.

Пример чтения из файла через FileChannel:

java
try (FileChannel channel = FileChannel.open(Paths.get("file.txt"))) {
    ByteBuffer buffer = ByteBuffer.allocate(1024);
    while (channel.read(buffer) > 0) {
        buffer.flip();
        System.out.println(new String(buffer.array()));
        buffer.clear();
    }
}

Преимущества:

  • Поддержка неблокирующих операций,
  • Эффективная работа с буферами (ByteBuffer),
  • Возможность блокировки файлов (FileLock).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы