sychronied修饰普通方法和静态方法的区别?什么是可见性?
对象锁是用于对象实例方法,或者一个对象实例上的
类锁:作用于类的静态方法或者一个类的class对象上的. 我们知道类的对象有很多个,但是每一个类
只有一个class对象,所以不同对象实例的对象锁是互相不干扰的,但是每个类只有一个类锁
类锁其实锁的是每一个类的对应的class对象,类锁和对象锁之间是相互不干扰的
可见性是指多个线程访问同一个变量时候,其中一个线程修改了这个变量的值,其他线程能够立即看到修改的值
要解决共享对象可见性这个问题,我们可以使用volatile关键字或者是加锁。