code: public boolean get(long index) throws IOException {
          try {
              lock().acquireReadLock();
              int value = mFile.read(index >> 3);
              return value > 0 && ((value << (index & 7)) & 0x80) != 0;
          }
          catch (InterruptedException e) {
              throw new InterruptedIOException();
          }
          finally {
              lock().releaseLock();
          }
      }
docs: Returns false if bit is clear (zero), true if bit is set (one). If bit
  is beyond the file buffer size, false is returned.