Почему хорошо закрыть () входной поток?
У меня есть опыт работы с языком программирования Java. Но одна вещь, которая всегда была в моей голове, это то, почему это необходимоclose()
java.io.InputStream
или его подклассы?
Теперь сjava.io.OutputStream
, сказатьFileOutputStream
после записи в файл, если мы неclose()
поток вывода, данные, которые мы намеревались записать в файл, остаются в буфере и не записываются в файл.
Так что становится необходимымclose()
OutputStream
, Но у меня никогда не было никаких горьких переживаний послене закрывается InputStream
.
Но все же все статьи в Интернете и книгах говорят, что всегда хорошо закрыть любой поток, если это будетInputStream
илиOutputStream
.
Поэтому мой вопрос заключается в том, почему это становится необходимым дляclose()
InputStream
? Люди говорят, что вы можете столкнуться с утечкой памятиclose()
Это. Так что же это за утечка памяти?