1.写一个卖票的程序, 
     1.写一个类,该类实现了Runnable接口.有一 
             个私有类型的int作为参数tickets. 
                   票的总数为100,完成run方法,输出结果的格式如下: 
                   当前窗口为:窗口a,剩余票数为19,其中窗口a为线程的名字 
         2.开启四个卖票窗口(开始四个线程),同时执行卖票的程序 
 */ 
public class Test06 { 
        public static void main(String[] args) { 
                //创建Runnable接口类对象 
                MyTickets t = new MyTickets(); 
                //创建Thread类,将Runnable类调用Thread类中的.start()方法,并将线程赋予名字 
                new Thread(t,"窗口a").start(); 
                new Thread(t,"窗口b").start(); 
                new Thread(t,"窗口c").start(); 
                new Thread(t,"窗口d").start(); 
                 
                 
        } 
         
         
} 
//创建Runnable接口的类 
class MyTickets implements Runnable { 
        //定义票的数量 
        private int tickets = 100; 
        @Override 
        //重写run方法 
        public void run() { 
                 
                while (true) { 
                        synchronized (MyTickets.class) { 
                                //判断票数数是否为0 
                                if(tickets < 0) 
                                        break; 
                                 
                                try { 
                                        Thread.sleep(10); 
                                } catch (InterruptedException e) { 
                                         
                                        e.printStackTrace(); 
                                } 
                                //当前窗口为:窗口a,剩余票数为19,其中窗口a为线程的名字 
                                System.out.println( "当前窗口为:" + Thread.currentThread().getName() + " 剩余票数为:" + tickets--); 
                        } 
                                 
                                 
                         
                } 
                 
        } 
         
         
} |   
        
 
    
    
    
     
 
 |