synchronized和Lock的区别: synchronized自助实现加锁和释放锁,Lock则需要手动实现synchronized锁的实现在JVM层依赖minitor监控锁,Lock实现是在JAVA层面synchronized能用于代码块,静态方法,和普通方法,Lock只能用于代码块synchronized锁的模式只有非公平锁,Lock两个都有.Lock的灵活性更高trylock(),粒度更细