第九周总结&实验报告七

小结:这周请了一天的假,所以回来的时候有些知识点跟不上,不过在第二节课学到了关于IO的知识很重要,对于这次的实验也有些吃力,这周的知识点主要集中在书上,在各种不同条件下学习运用什么样的代码。

 

一、File

1.在整个io包中,唯一表示与文件本身有关的类就是File类。

2.使用File类可以进行创建或删除文件等常用操作。

3.要想使用File类,则首先要观察File类的构造方法。

二、File类中的主要方法和常量 

实验任务详情:

完成火车站售票程序的模拟。
要求:
1)总票数1000张;
210个窗口同时开始卖票;
3)卖票过程延时1秒钟;
4)不能出现一票多卖或卖出负数号票的情况。

 

 

 

实验代码

package first;
class MyThread implements Runnable{
    private int ticket = 1 ;    
    public void run(){
        for(int i=0;i<1000;i++){
            synchronized(this){ 
                if(ticket<=1000){  
                    try{
                        Thread.sleep(1000) ;    
                    }catch(InterruptedException e){
                        e.printStackTrace() ;
                    }
                        System.out.println(Thread.currentThread().getName()+"卖票:ticket = " + ticket++ );
                }
            }
        }
    }   
}
public class Demo{
    public static void main(String args[]){
        MyThread my = new MyThread();
        Thread d1 = new Thread(my,"窗口A");
        Thread d2 = new Thread(my,"窗口B");
        Thread d3 = new Thread(my,"窗口C");   
        Thread d4 = new Thread(my,"窗口D");
        Thread d5 = new Thread(my,"窗口E");
        Thread d6 = new Thread(my,"窗口F");
        Thread d7 = new Thread(my,"窗口G");
        Thread d8 = new Thread(my,"窗口H");
        Thread d9 = new Thread(my,"窗口I");
        Thread d10 = new Thread(my,"窗口J");
        d4.setPriority(Thread.MIN_PRIORITY) ;   
        d5.setPriority(Thread.MAX_PRIORITY) ;   
        d6.setPriority(Thread.NORM_PRIORITY) ;  
        d1.start() ;    
        d2.start() ;   
        d3.start() ;    
        d4.start() ;    
        d5.start() ;    
        d6.start() ;   
        d7.start() ;    
        d8.start() ;    
        d9.start() ;    
        d10.start() ;
    }
}

实验结果

 实验小结:这次实验主要时运用多线程进行编写,其中使用Thread类和Runnable接口。

原文地址:https://www.cnblogs.com/LUMO/p/11731323.html