主要有4种:
1:用在代码块上:
public void test() {
//用在代码块上
synchronized (this) {
// do sth
}
}
2:用在对象上:
public void test2() {
// 用在对象上
synchronized (object) {
// do sth
}
}
3:用在方法上:
public synchronized void test3() {
// do sth
}
4:用在静态方法上:(如单例模式)
public static void test4() {
synchronized (Demo_1.class) {
// do sth
}
}