- class Bank
- {
- private int sum;
- Object obj=new Object();
- public void add(int n)
- {
- synchronized(obj)
- {
- sum=sum+n;
- System.out.println("sum="+sum);
- }
- }
- }
- class Cus implements Runnable
- {
- private Bank b=new Bank();
- public void run()
- {
- for(int x=0;x<3;x++)//这个x在运行时会不会发生多个线程同时进入,而多个线程是不是公用这个x,为什么?
- {
- b.add(100);
- }
- }
- }
- public class BankDemo {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Cus c=new Cus();
- Thread t1=new Thread(c);
- Thread t2=new Thread(c);
- t1.start();
- t2.start();
- }
- }
复制代码
for语句中的x这个x在运行时会不会发生多个线程同时进入,而多个线程是不是公用这个x,为什么?
|
|