相同:二者都可以解决线程安全问题。
不同:synchronized机制在执行完相应的同步代码块以后,自动的释放同步监视器
Lock需要手动的启动同步【lock()】,也需要手动的结束同步【unlock()】