Musíme zavřít InputStream v Javě?
Musíme zavřít InputStream v Javě?

Video: Musíme zavřít InputStream v Javě?

Video: Musíme zavřít InputStream v Javě?
Video: Java - Part 262 - FileInputStream and FileOutputStream 2024, Listopad
Anonim

2 Odpovědi. Vy potřeba zavřít a vstup Stream , protože proud vrácený metodou, kterou zmiňujete, je ve skutečnosti FileInputStream nebo nějaká jiná podtřída InputStream která drží rukojeť pro soubor. jestli ty dělat ne zavřít tento stream vás mít únik zdrojů.

Vzhledem k tomu, je nutné zavřít InputStream v Javě?

Ale vstupní proud s není nikdy uzavřeno. Toto je samostatný Jáva programů a existuje několik takových programů, kde InputStream není nikdy uzavřen. Za normálních okolností bude soubor uzavřen, když InputStream objekt je sbírán odpadky nebo když program skončí. Normálně není dobrý nápad nechávat věci takto otevřené.

Také, proč bychom měli zavírat streamy v Javě? Je to důležité blízké proudy , aby se uvolnil deskriptor souboru držený touto třídou jako její omezený zdroj a používaný jak při připojení soketu, tak při manipulaci se soubory. Vážné nevracení prostředků může mít za následek také výjimku deskriptoru souboru.

Za druhé, musím zavřít FileInputStream?

Ano, ty potřeba zavřít vstupní proud, pokud jste chtít vaše systémové prostředky uvolněny zpět. FileInputStream . zavřít () je to, co vy potřeba . Ty taky potřeba zavřít (), nebo ukončete program.

Musím zavřít ByteArrayInputStream?

4 Odpovědi. Nemusíš zavřete ByteArrayInputStream , v okamžiku, kdy na něj neodkazuje žádná proměnná, garbage collector uvolní stream a některé bajty (samozřejmě za předpokladu, že nejsou odkazovány někde jinde).

Doporučuje: