From the API for RandomAccessFile's close() method:
If this file has an associated channel then the channel is closed as well.
I do not find (in the API) any explicit statement of the converse, that closing a FileChannel will close the associated RandomAccessFile or stream. I believe it's true, but can't quite find a guarantee. Here's something close:
The state of a file channel is intimately connected to that of the object whose getChannel method returned the channel. Changing the channel's position, whether explicitly or by reading or writing bytes, will change the file position of the originating object, and vice versa. Changing the file's length via the file channel will change the length seen via the originating object, and vice versa. Changing the file's content by writing bytes will change the content seen by the originating object, and vice versa.