У меня есть метод, который создает блокировку.
ReadWriteLock lock = new ReentrantReadWriteLock();
Затем я передаю этот объект в метод с использованием интерфейса блокировки.
method(Lock lock)
внутри метода, я просто делаю следующее.
final ReentrantReadWriteLock currentLock = (ReentrantReadWriteLock) lock;