¿El DigestInputStream en un try-con-recursos cerrar el InputStream original?

bueno

¿Es necesario que cierre de forma explícita el original InputStreamsi declaré una DigestInputStreamen un bloque try-con-recursos?

Ejemplo:

InputStream is = ...;
MessageDigest md = ...;

try (final DigestInputStream digestInputStream = new DigestInputStream(is, md)) {
    // Read the stream...
}

¿Es necesario que cierre de forma manual es o no?

CodeMatrix:

Debido a que el DigestInputStreames una AutoCloseableque no es necesario para cerrarlo manualmente cuando se declaró en un bloque try-con-recursos.

Docu desde AutoCloseable:

El {@link #Cerrar ()} método de un {@code AutoCloseable} objeto se llama automáticamente al salir de un {@code try} -con-recursos bloque para el que el objeto ha sido declarada en la cabecera de especificación de recursos.

Además, la FilterInputStreamanula el closemétodo que cierra la segunda mano InputStream.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=234406&siteId=1
Recomendado
Clasificación