读书人

多线程:模拟烧茶的进程

发布时间: 2012-12-23 11:28:15 作者: rapoo

多线程:模拟烧茶的过程:

/** *  * 模拟烧茶的过程:    *  1)烧水     *  2)需要茶叶的时候发现没茶叶,叫eric去买(没有茶叶,需要买)     *  3)需要杯子的时候发现没杯子,叫meten去买(没有杯子,需要买)      *  4)放茶叶      *  5)倒水 * @author 够潮 * */public class Demo12 {/** * @param args */public static void main(String[] args) {BurnTea bt = new BurnTea("够潮");bt.start();}}/** * 管理线程 * @author 够潮 * */class BurnTea extends Thread{public BurnTea(String name){super(name);}@Overridepublic void run() {System.out.println(this.getName() +"烧水");System.out.println(this.getName()+"发现没有茶叶了,叫eric去买");TeaThread teaThread = new TeaThread("eric");try {teaThread.start();teaThread.join();//买茶叶} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(this.getName()+"发现没有茶杯了,meten去买");TeaCupThread teaCupThread = new TeaCupThread("meten");try {teaCupThread.start();teaCupThread.join();//买茶杯} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(this.getName()+"放茶叶");System.out.println(this.getName()+"倒水");System.out.println(this.getName()+"烧好茶了");}}/** * 买茶叶模拟线程 * @author 够潮 * */class TeaThread extends Thread{public  TeaThread(String name ){super(name);}@Overridepublic void run() {System.out.println(this.getName() +"去买茶叶啦");try {Thread.sleep(1000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(this.getName()+"买茶叶回来啦");}}/** * 没茶杯模拟线程 * @author 够潮 * */class TeaCupThread extends Thread{public  TeaCupThread(String name ){super(name);}@Overridepublic void run() {System.out.println(this.getName() +"去买茶杯啦");try {Thread.sleep(1000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(this.getName()+"买茶杯回来啦");}}

?

读书人网 >编程

热点推荐