有关JAVA多线程的小问题

2025-03-24 17:09:46
推荐回答(1个)
回答(1):

因为并发出问题了。
开始 sum = 0,这时候先是线程1 加 10,sum = 10,紧接着线程2 加 10,sum = 20,然后线程1 打印 20,再线程2 打印 20。
对于多个线程可能同时修改同一资源的代码需要进行同步。
Bank 中 add 方法加上 synchronized,修改成 public synchronized void add(int n)。