编写一个Java 多线程程序,完成三个售票窗口同时出售20张票(如下图所示);

程序分析:(1)票数要使用同一个静态值;

(2)为保证不会出现卖出同一个票数,要java多线程同步锁。

设计思路:

(1)创建一个站台类Station,继承Thread,重写run方法,在run方法里面执行售票操作!售票要使用同步锁:即有一个站台卖这张票时,其他站台要等这张票卖完!

(2)创建主方法调用类

`public class Station extends Thread{

static int ticket=20;

static Object ob=“aa”;

Station(String name){

super(name);

}

public void run(){

super.run();

while(ticket>=0){

synchronized (ob){

if(ticket>0){

System.out.println(Thread.currentThread().getName()+“卖的第”+ticket+“张票”);

ticket–;

}

else {

System.out.println(“票卖完了”);

ticket–;

}

}

try{

Thread.sleep(1000);

}

catch(InterruptedException e){

e.printStackTrace();

}

}

}

public static void main(String args[]){

Station station1=new Station("窗口1:");

Station station2=new Station("窗口2:");

Station station3=new Station("窗口3:");

station1.start();

station2.start();

station3.start();

}

}

`

java 多线程 卖票_编写一个Java 多线程程序,完成三个售票窗口同时出售20张票(如下图所示);...相关推荐

  1. java结果分行显示_编写一个java程序。分行显示自己的姓名,地址,电话!用Test.java命名。_学小易找答案...

    [单选题]16.骨骼肌进行完全强直收缩时,相邻两次刺激的时间间隔应 [填空题]实习岗位名称 [单选题]神经调节的基本方式是: [单选题]Thank you for your nice gifts. - ...

  2. JAVA多线程模仿站台三个窗口同时出售20张票

    1.多线程 public class Station extends Thread {           // 通过构造方法给线程名字赋值         public Station(String ...

  3. Java编写学生类student程序_编写一个JAVA程序片断定义一个表示学生的类student.docx...

    编写一个JAVA程序片断 定义一个表示学生的类student,包括域"学号","班级","姓名","性别"," ...

  4. java 级数_编写一个Java程序实现级数运算。

    编写一个Java程序实现级数运算.其中:定义级数求和类,以及级数求积(阶乘)类,在项目主类中声明一个级数求和对象和求阶乘对象,由键盘输入级数的n值,并打印出1+2+...+n的和,以及... 编写一个 ...

  5. java编程用户输入两个数字_编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不...

    导航:网站首页 > 编写一个Java应用程序,要求从键盘输入两个整数,计算这两个数据...,编写一个Java应用程序,要求从键盘输入一个数,判断该数是不 编写一个Java应用程序,要求从键盘输入 ...

  6. java编写salary函数_编写一个Java程序,在程序中包含一个Employee类,Employee类包含name、age、salary三个成员变量...

    编写一个Java程序,在程序中包含一个Employee类,Employee类包含name.age.salary三个成员变量,Employee类中有4个构造方法,分别为无参的.带一个参数用来对name属 ...

  7. JAVA类与对象tank_5.编写一个java程序,该程序有两个类:Tank(用于刻画坦克)和Fight(主类)。 已知坦克类如下:...

    5.编写一个java程序,该程序有两个类:Tank(用于刻画坦克)和Fight(主类). 已知坦克类如下: public classTank{ double speed;        //坦克速度 ...

  8. java输入字符串异常_设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”。。。...

    设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为"XYZ",则抛出一个异常信息"This is a XYZ",如果从命令 ...

  9. java 64内存不足_请教一个 Java 内存占用的问题

    第 1 条附言  ·  364 天前 2020-03-04 01:08:55.525 [HikariPool-1 housekeeper] WARN c.z.hikari.pool.HikariPoo ...

最新文章

  1. springboot整合Quartz实现动态配置定时任务
  2. 计算机电路门,7.3 门电路计算机操作系统原理.pdf
  3. perl mysql 数据推拉_Perl操作Mysql数据库
  4. SpringBoot 注解大全
  5. MySQL存储引擎、MyISAM、InnoDB
  6. ADF:使用HTTP POST方法进行URL任务流调用
  7. 增加表空间大小的四种方法
  8. php串行化场景,PHP中串行化的使用
  9. JavaScript 中的 this
  10. Office 2007在安装过程中出错
  11. UVA485 Pascal‘s Triangle of Death【大数】
  12. python复利代码_python复利
  13. python数组下标用变量_你所不知道的Python奇技淫巧13招【实用】
  14. java 图片线条_JAVA 关于JFrame的问题,我的图片会被线条给覆盖住,怎样让图片在上面呢...
  15. 【神经网络】正向传播和反向传播(结合具体例子)
  16. python tutorial什么意思中文_Python 2.7 Tutorial 中文版
  17. 【网络】应用层-HTTP协议
  18. scilab系列---概述
  19. 迷茫与焦虑---是世界观,价值观,人生观,人格品行的形成
  20. iOS地图定位系统语言为英文时,返回中文位置信息

热门文章

  1. Windows10安装MG2580打印机
  2. bzoj 3162: 独钓寒江雪 树哈希+树形dp
  3. 《Python黑帽子:黑客与渗透测试编程之道》读书笔记(三):scapy——网络的掌控者
  4. 核心乐理---和弦基础
  5. vue中添加语音播报的功能
  6. JAVA实现图片质量压缩和加水印
  7. 【python学习笔记】自动抓取雅虎新闻的内容
  8. 网页设置的音频不能自动播放
  9. JS Object() 与 new Object()的区别
  10. 洋哥有哪些送给20多岁年轻人的建议?