父类的synchronized子类是有效的
来源:3-3 线程安全性-原子性-synchronized
慕设计7465963
2018-11-18
老师你好,我用的是jdk1.8,测了下父类的synchronized子类是有效的
父类:
public class SyncTestParent {
public synchronized void sysc1() {
try {
System.out.println("into sysc1");
Thread.sleep(5000);
} catch (Exception e) {
}
}
}
子类
public class SyncTestChild extends SyncTestParent {
public static void main(String[] args) {
SyncTestChild child = new SyncTestChild();
for (int i = 0; i <5; i++) {
Thread thread = new Thread(() -> {
child.sysc1();
});
thread.start();
}
}
}
测试结果是每隔5秒打印一次的
写回答
1回答
-
你好,如果父类的某个方法是synchronized的,而子类覆盖了这个方法,那么默认情况下子类这个方法不是synchronized的,不覆盖的话当然没事,因为本身就是走的父类里的方法
012018-11-18
相似问题