日期:2014-05-20  浏览次数:20773 次

java同步方法与同步块,静态同步的区别
小弟想问一下高手,同步方法是锁定了对象还是类本身呢,还有就是同步块锁定的是什么,静态同步什么时候用

------解决方案--------------------
同步方法锁定的是对象
这个说法比较怪

public synchronized void fuc1(){
}

相当于
public void fuc1(){
synchronized(this){
}
}

静态同步?就是静态类或方法里用的同步呀

------解决方案--------------------
无论synchronized关键字加在方法上还是对象上,它取得的锁都是对象
------解决方案--------------------
synchronized 锁定的是对象,即使是同步块,他前面限定的也有对象。
------解决方案--------------------
楼上的都是正解。只能所对象object,because everthing is object。但是块锁效率可能会高
他不互斥对象非同步内容