Has anyone ever seen an exception thrown when calling close method on any closable object?
I haven't, but it's possible. Imagine if there's an OutputStream that for some reason hasn't written to the file yet. Well, calling close() will flush out the data, but if the file is locked - then an IOException would be raised.
OutputStream
close()
IOException