synchronized实现了线程同步,让多个线程排队依次获取某个资源,保证数据不会出错 修饰方法 静态方法,锁定的是类(无论通过哪个实例调用,锁都是同一个)非静态方法,锁定的是方法的调用者(不同实例的同步方法调用互不影响(锁对象不同)) 修饰代码块,锁定的是传入的对象