实验任务详情:

完成火车站售票程序的模拟。

要求:

(1)总票数1000张;

(2)10个窗口同时开始卖票;

(3)卖票过程延时1秒钟;

(4)不能出现一票多卖或卖出负数号票的情况。


public class ticket{
public static void main(String[] args) { w mt=new w(); new Thread(mt,"窗口1").start();
new Thread(mt,"窗口2").start();
new Thread(mt,"窗口3").start();
new Thread(mt,"窗口4").start();
new Thread(mt,"窗口5").start();
new Thread(mt,"窗口6").start();
new Thread(mt,"窗口7").start();
new Thread(mt,"窗口8").start();
new Thread(mt,"窗口9").start();
new Thread(mt,"窗口10").start();
}
} class w implements Runnable{ private int ticket=1000; public void run() {
for(int i=0;i<1000;i++) {
synchronized(this) {
if(ticket>0) {
try {
Thread.sleep(1000);
}
catch(InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName()+
"余票:"+ticket--);
}
}
}
}
}

学习总结:

1.主要学习了多线程的实现;

2.主要学习了Thread中的方法;

3.主要学习了取得和设置线程名称、判断线程是否启动、线程的强制转换、线程的休眠、中断、礼让等等。

4.主要学习了同步与死锁,并通过窗口卖票的代码对这周的学习内容有了更好的巩固。

第九周课程总结&实验报告的更多相关文章

  1. 第九周课程总结 & 实验报告(七)

    第九周课程总结 一.多线程 1.线程的状态 2.线程操作的相关方法 二.Java IO 1.操作文件的类---File ()基本介绍 ()使用File类操作文件 .RandomAccessFile类 ...

  2. 第九周课程总结&实验报告七

    实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负数号票的情况. package ...

  3. 第九周课程总结&实验报告7

    实验任务详情: 完成火车站售票程序的模拟.要求:(1)总票数1000张:(2)10个窗口同时开始卖票:(3)卖票过程延时1秒钟:(4)不能出现一票多卖或卖出负数号票的情况. 实验代码: package ...

  4. 第九周课程总结&实验报告(七)

    实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负数号票的情况. 实验代码 pac ...

  5. 第六周课程总结&实验报告(四)

    实验报告(四) 一.实验目的 1.掌握类的继承 2.变量的继承和覆盖,方法的继承,重载和覆盖的实现 二.实验的内容 1.根据下面的要求实现圆类Circle. 圆类Circle的成员变量:radius表 ...

  6. 第八周课程总结 & 实验报告(六)

    第八周课程总结 一.包装类 介绍 装箱与拆箱 应用 二.异常 基本概念 基本格式 异常类的继承结构 throws关键字 throw关键字 Exception类和RuntimeException类 自定 ...

  7. 第七周课程总结 & 实验报告(五)

    第七周课程总结 一.抽象类与接口的应用 1.实例化 2.实际应用 ---模板设计(抽象类) ---制定标准(接口) 3.设计模式 ---工厂设计 ---代理设计 ---适配器设计 二.抽象类与接口之间 ...

  8. 第三周课程总结&实验报告

    课程总结 在这周对Java进行了更深层次的学习,Java的学习也变得越来越困难而有趣,加入了一些新的构造新的方法,还学习了一些简化代码的方式. 面向对象的基本概念 对于面向对象的程序设计有三个主要特征 ...

  9. 第三周课程总结&实验报告(一)

    实验报告(一) 1.打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数" ...

随机推荐

  1. 1223 drf引入以及restful规范

    目录 前后台的数据交互 drf 知识点概括 1. 框架安装 2. 接口 2.1 什么是接口 2.2 接口文档 2.3 接口工具的使用 2.4 restful接口规范 debug的使用 前后台的数据交互 ...

  2. C# 扩展、常用方法

    项目基本做完了,抽空整理下里面用到的扩展方法,以及复用度很高的代码,省的以后到处去找. 一.C#扩展方法——Distinct去重 二.C#扩展方法——获得枚举Description 三.C#扩展方法— ...

  3. jmeter-响应有中文时,显示乱码

    Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

  4. [深度学习] 各种下载深度学习数据集方法(In python)

    一.使用urllib下载cifar-10数据集,并读取再存为图片(TensorFlow v1.14.0) # -*- coding:utf-8 -*- __author__ = 'Leo.Z' imp ...

  5. 11、LineEdit与setCompleter自动补全

    #include "mainwindow.h" #include "ui_mainwindow.h" #include <QDebug>//引入打印 ...

  6. 计算机网络(三),TCP报文段详解

    目录 1.TCP(Transmission Control Protocol传输控制协议)作用 2.TCP报文段详解 三.TCP报文段详解 1.TCP(Transmission Control Pro ...

  7. Latex生成的.pdf 公式之间隔了几行空白

    如题, 解决办法: \vspace{-1.5cm},这个数值根据需要来设置.

  8. [BZOJ2002][洛谷P3203][Hnoi2010]Bounce 弹飞绵羊(LCT维护链长)

    luogu传送门 2002: [Hnoi2010]Bounce 弹飞绵羊 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 16082  Solved:  ...

  9. 并发编程--Concurrent-工具类介绍

    并发编程--Concurrent-工具类介绍 并发编程--Concurrent-工具类介绍 CountDownLatch CylicBarrier Semaphore Condition 对象监视器下 ...

  10. Alpha发布--美工+文案

    此作业对应要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8677 一.美工: 1.产品logo 2.原型页面展示 2.1 进入萌 ...