4.1.3 Lock框架有哪些常用的锁?它们有什么优缺点?