设计三个线程,模拟动物园售票窗口进行卖票,每天总共最多只能出售100张票,售完后所有窗口都停止售票,售票结束后打印出各个窗口的售票数量。

package com.ticket.java;
/**
 * 在练习三的基础上,售票结束后打印出各个窗口的售票数量。
 * @author Administrator
 *
 */
public class Ticket implements Runnable {
	private int num=100;
	private int a=0,b=0,c=0;
	@Override
	public void run() {
		while(num>0) {
			saleTicket();
		}
		
	}
	
	private synchronized void saleTicket() {
		if(num>0) {
			try {
				Thread.sleep(100);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			if(Thread.currentThread().getName().equals("窗口A")) {
				a++;
			}
			if(Thread.currentThread().getName().equals("窗口B")) {
				b++;
			}
			if(Thread.currentThread().getName().equals("窗口C")) {
				c++;
			}
			num--;
			System.out.println(Thread.currentThread().getName()+ 
					" 卖出一张票,还剩:"+ num + "张");
		}
		if(num==0) {
			System.out.println("窗口A共卖出去:" + a + "张票");
			System.out.println("窗口B共卖出去:" + b + "张票");
			System.out.println("窗口C共卖出去:" + c + "张票");
		}
		
}

	public static void main(String[] args) {
		Ticket tic = new Ticket();
		
		Thread t1 = new Thread(tic,"窗口A");
		Thread t2 = new Thread(tic,"窗口B");
		Thread t3 = new Thread(tic,"窗口C");
		
		t1.start();
		t2.start();
		t3.start();
		
	}
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计是高等教育阶段学生在完成学业前所进行的一项重要学术任务,旨在检验学生通过学习所获得的知识、技能以及对特定领域的深刻理解能力。这项任务通常要求学生运用所学专业知识,通过独立研究和创新,完成一个实际问题的解决方案或者开展一项有价值的项目。 首先,毕业设计的选择通常由学生根据个人兴趣、专业方向以及实际需求来确定。学生需要在导师的指导下明确研究目标、问题陈述,确立研究的范围和深度。毕业设计可以包括文献综述、需求分析、方案设计、实施与测试等多个阶段,以确保整个过程的科学性和系统性。 其次,毕业设计的完成通常需要学生具备一定的独立思考和解决问题的能力。在研究过程中,学生可能需要采用各种研究方法,如实验、调查、案例分析等,以获取必要的数据和信息。通过这些活动,学生能够培养扎实的专业技能,提升解决实际问题的实际能力。 第三,毕业设计的撰写是整个过程的重要组成部分。学生需要将研究过程、方法、结果以及结论等详细记录在毕业论文中,以展示其研究的全貌和成果。同时,撰写毕业设计还有助于提高学生的学术写作水平,培养清晰、逻辑的表达能力。 最后,毕业设计的评价通常由导师和相关专业人士进行。评价标准包括研究的创新性、实用性、方法的科学性以及论文的质量等方面。学生在毕业设计中获得的成绩也将直接影响其最终的学业成绩和学位授予。 总的来说,毕业设计是高等教育中的一项重要环节,通过此过程,学生不仅能够巩固所学知识,还能培养独立思考和解决问题的能力,为将来的职业发展奠定坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值