⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 threadexp17.java

📁 java关于多线程的课堂练习
💻 JAVA
字号:
/**
 * @(#)ThreadExp17.java
 *
 *
 * @author 
 * @version 1.00 2007/11/30
 */
class ThreadJoin implements Runnable {
 Car car;
 Thread  customer,carMaker;
 ThreadJoin() {
  customer=new Thread(this);
  customer.setName("顾客");
  carMaker=new Thread(this);
  carMaker.setName("汽车制造厂");
 }
 public void run() {
  if (Thread.currentThread()==customer)
  {
    System.out.println(customer.getName()+"等"+carMaker.getName()+"生产汽车");
    try {
     carMaker.start();
     carMaker.join();
    }
    catch (InterruptedException e) { }
    System.out.println(customer.getName()+"买了一辆汽车:"+car.name+" 价钱:"+car.price);
  }
  else if (Thread.currentThread()==carMaker) {
   System.out.println(carMaker.getName()+"开始生产汽车,请等...");
   try {
   	carMaker.sleep(2000);
   }
   catch (InterruptedException e) { }
   car=new Car("红旗轿车",288000);
   System.out.println(carMaker.getName()+"生产完毕");
  }
 }
}
class Car {
 float  price;
 String name;
 Car(String name,float price) {
   this.name=name;
   this.price=price;
 }
}
public class ThreadExp17 {
        
    /**
     * Creates a new instance of <code>ThreadExp17</code>.
     */
    public ThreadExp17() {
    }
    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
      ThreadJoin  a=new ThreadJoin();
      a.customer.start();
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -