ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.12.2023

Просмотров: 93

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
1)Чтотакоепотокиввода-вывода?КакэтореализовановJava?ВJavaосновнойфункционалработыспотокамисосредоточенвклассахиз пакетаjava.io.Ключевымпонятиемздесьявляетсяпонятиепотока.Вданном случаемыбудемговоритьопотоке(stream),какобабстракции,которая используетсядля
чтенияилизаписиинформации(файлов,сокетов,текста консолиит.д.).Объект,изкоторогоможносчитатьданные,называется потокомввода,а объект,вкоторыйможнозаписывать данные,-потокомвывода.Например, еслинадосчитатьсодержаниефайла,топрименяетсяпотокввода,аесли надозаписатьвфайл-топотоквывода.Восновевсехклассов,управляющихпотокамиба

йтов,находятсядва абстрактныхкласса:InputStream(представляющийпотокиввода)и OutputStream(представляющийпотокивывода).Нопосколькуработатьс байтаминеоченьудобно,тодля работыспотоками символовбылидобавленыабстрактныеклассыReader(длячтенияпотоков символов)иWriter(длязаписипотоковсимволов).Всеостальныеклассы, работающиеспотоками,яв
ляютсянаследникамиэтихабстрактныхклассов.Какиеинтерфейсы реализуетInputStream/OutputStream/Reader/Writer?InputStreamреализуетинтерфейсы:CloseableиAutoCloseable OutputStreamреализуетинтерфейсы: Closeable,Flushable,AutoCloseable Readerреализуетинтерфейсы:Closeable,AutoCloseable,ReadableWriterреализуетинтерфейсы: Closeable,Flushable

, Appendable, AutoCloseable

На каком паттерне основана иерархия потоков ввода/вывода?

Объекты классов Java, которые используются для ввода/вывода, для обеспечения необходимой функциональности наслаиваются друг на друга. Такая модель взаимодействия объектов поддерживается в паттерне

«Декоратор». В этом паттерне при создании потока нужно использовать несколь