API
public interface Lock {
void lock();
void lockInterruptibly() throws InterruptedException; // 在获取锁的同时保持对中断的响应
boolean tryLock();
boolean tryLock(long time, TimeUnit unit) throws InterruptedException;
void unlock();
Condition newCondition();
}