利用Java多线程顺序打印10次ABC_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 利用Java多线程顺序打印10次ABC

利用Java多线程顺序打印10次ABC

 2011/1/14 7:38:53  wangchun8926  http://wangchun8926.javaeye.com  我要评论(0)
  • 摘要:刚才写的利用Java多线程顺序打印10次ABC的小程序/***顺序10次打印ABC*@authorAdministrator**/publicclassThreadPrint{publicstaticvoidmain(String[]args){Aa=newA();for(inti=0;i<10;i++){MyThreadmt1=newMyThread(a);mt1.start();}}}classA{privatechar[]c={'A','B','C'}
  • 标签:多线程 Java 利用

刚才写的利用Java多线程顺序打印10次ABC的小程序

/**
 * 顺序10次打印ABC
 * @author Administrator
 *
 */
public class ThreadPrint {
	
	public static void main(String[] args) {
		A a = new A();
		
		for(int i=0;i<10;i++) {
			MyThread mt1 = new MyThread(a);
			mt1.start();
		}
	}
}


class A {
	
	private char[] c = {'A','B','C'};

	private int index;
	
	
	public char[] getC() {
		return c;
	}


	public synchronized void execute() {
		
		if(index >= c.length) {
			index = 0;
		} else {
			System.out.println(c[index++]);
		}
	}
}

class MyThread extends Thread{
	
	private A a;
	
	public MyThread4(A a) {
		this.a = a;
	}
	
	public void run() {
		synchronized (a) {
			int index = a.getC().length;
			for(int i=0;i<=index;i++) {
				a.execute();
			}
			System.out.println("===============");
		}
	}
}
?
发表评论
用户名: 匿名