【P311】
设计4个线程对象,两个线程执行减操作,两个线程执行加操作。
1 package org.lsy.test; 2 3 public class Test { 4 private int i; 5 private synchronized void inc(){ //同步增加方法 6 i++; 7 System.out.println(Thread.currentThread().getName()+"--inc--"+i); 8 } 9 private synchronized void dec(){ //同步减算方法 10 i--; 11 System.out.println(Thread.currentThread().getName()+"--dec--"+i); 12 } 13 class Inc implements Runnable{ //实现Runnable接口 增加线程 14 public void run(){ 15 inc(); 16 } 17 } 18 class Dec implements Runnable{ //减算线程 19 public void run(){ 20 dec(); 21 } 22 } 23 public static void main(String[] args){ 24 Test t = new Test(); 25 Inc inc = t.new Inc(); //内部类的实例化 26 Dec dec = t.new Dec(); 27 for(int i=0;i<2;i++){ //创建2*n个线程,这里n=2 28 new Thread(inc).start(); 29 new Thread(dec).start(); 30 } 31 } 32 }
程序运行结果