Moeten we InputStream in Java sluiten?
Moeten we InputStream in Java sluiten?

Video: Moeten we InputStream in Java sluiten?

Video: Moeten we InputStream in Java sluiten?
Video: Java File Input/Output - It's Way Easier Than You Think 2024, Mei
Anonim

2 antwoorden. Jij moet wel sluiten de ingangsstroom , omdat de stream die wordt geretourneerd door de methode die u noemt, eigenlijk FileInputStream is of een andere subklasse van InvoerStream die een handvat voor een bestand bevat. als jij doen niet dichtbij deze stream jij hebben bron lekkage.

Is het, met dit in overweging, nodig om InputStream in Java te sluiten?

Maar de invoerstroom s is nooit gesloten. Dit is een op zichzelf staande Java programma's en er zijn verschillende van dergelijke programma's waarbij de InvoerStream is nooit gesloten. Normaal gesproken wordt het bestand gesloten wanneer de InvoerStream object is vuilnis verzameld of wanneer het programma eindigt. Het is normaal gesproken geen goed idee om dingen zo open te laten.

En waarom zouden we streams in Java sluiten? Het is belangrijk om stromen sluiten , om de bestandsdescriptor van deze klasse vrij te geven als zijn beperkte bron en wordt gebruikt in zowel socketverbinding als bestandsverwerking. Een ernstig bronlek kan ook resulteren in een bestandsdescriptor-uitzondering.

Ten tweede, moet ik FileInputStream sluiten?

Ja jij moet sluiten de invoerstroom als u wil uw systeembronnen zijn weer vrijgegeven. Bestandsinvoerstroom . dichtbij () is wat jij nodig hebben . Jij ook moet sluiten (), of beëindig uw programma.

Moet ik ByteArrayInputStream sluiten?

4 antwoorden. Je hoeft niet sluiten ByteArrayInputStream , op het moment dat er door geen enkele variabele naar wordt verwezen, zal garbage collector de stream en somebytes vrijgeven (uiteraard ervan uitgaande dat er niet ergens anders naar wordt verwezen).

Aanbevolen: