Closes this stream and releases any system resources associated with it. If the stream is already closed then invoking this method has no effect.
As noted in
AutoCloseable.close(), cases where the
close may fail require careful attention. It is strongly advised
to relinquish the underlying resources and to internally
Closeable as closed, prior to throwing
|if an I/O error occurs|