En el siguiente código:¿Qué tan cerca están los flujos de entrada de Java?
DataInputStream in = new DataInputStream(
new BufferedInputStream(new FileInputStream(file)));
in.close();
¿Es necesario cerrar los otros 2 corriente además de cerrar el "nivel superior" corriente?
Más al punto, está documentado. Está un poco fragmentado, pero 'DataInputStream' hereda' close' de 'FilterInputStream', que documenta que llama' close' en el 'InputStream' subyacente: http://download.oracle.com/javase/6/docs/api /java/io/FilterInputStream.html Para que sepa que el comportamiento no es solo un efecto secundario de una implementación en particular. –
En realidad es cierto para todos los tipos de 'Closeable' –
@Sherwin ... siempre que implementen el" contrato "correctamente :-) –