synchronized
线程安全问题主要发生在线程共享的区域,例如实例对象等。
synchronized关键字可以保证临界区的访问线程安全和变量的可见性。
synchronized的对象监视器主要有Object和Class。
多个线程访问同一个对象监视器时会同步执行。
synchronized同步非静态方法、非静态代码块,非静态变量或者this时, 对象监视器为Object。
synchronized同步静态区域的时候,对象监视器是Class。
对象监视器是Class时,对所有实现类都起作用。
同步不具有继承性,如果子类重写synchronized关键字修饰的方法,子类的方法不具有同步属性。