第九周总结&第七次实验报告
实验7
实验任务详情:
完成火车站售票程序的模拟。
要求:
- (1)总票数1000张;
- (2)10个窗口同时开始卖票;
- (3)卖票过程延时1秒钟;
- (4)不能出现一票多卖或卖出负数号票的情况。
实验过程
package shiyan7;
public class Mythread 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--);
}
}
}
}
}
package shiyan7;
public class Maipiaoge {
public static void main(String args[]) {
Mythread mp = new Mythread();
for(int i = 1;i < 11;i ++) {
Thread xc[] = new Thread[11];
xc[i] = new Thread(mp,"买票窗口" + i);
xc[i].start();
}
}
}
实现结果

因等一秒要点时间,所以这个截屏没有等。
实验总结
本次实验让我知道了多线程的作用,并且初步实现了多线程,更加熟练的使用多线程
第九周总结
本周主要学习了,线程的几种状态,线程的操作及其方法,Java的IOName()方法设置线程名字,可以允许线程同名,但应该避免这种事情发生,如果没有设置线程名称那么系统会默认设置一个名字为Thread-Xx。

Java中用isAliva()来判断线程是否启动并且还在运行。

Java中可以用join()方法让一个线程强制运行,并且这个期间,其他线程只能等,不能运行。
用Thread.sleep()让线程休眠,用interrupt()方法中断线程用setDaemon()方法让线程在后台运行。
线程的优先级

但并不是线程的优先级越高,就一定会先执行,那个线程先执行还是由CPU来调度。
线程的礼让,可以用yield()方法将一个线程的操作暂时让给其它线程执行,但并不是一定会让,还是由CPU决定。
JavaIO
file类,与文件本身有关的类,可以用它,新建文件,删除文件等操作。

可以用createNewFile()创建文件,但是windows是反斜杠分隔,linux用正斜杠分隔,所以一般用Java提供的两个常量pathSeparator,setparator
用delete()方法删除文件。exists()判断文件是否存在
用mkdir()方法创建文件夹,用public String[] list():列出全部名称,public File listFiles():列出完整路径。
RandomAccessFile类,对文件内容进行操作。

第九周总结&第七次实验报告的更多相关文章
- 第七周总结&第五次实验报告
学习总结 这周我们加深了对抽象类与接口的学习,获得的知识点也比上周多了许多,抽象类与接口很相似,就比如别人还没有做完的是交给你来做,而他那些样式都做好了,你只需要完善即可 但也有不同点. 区别点 抽象 ...
- 2019JAVA第七次实验报告
Java实验报告 班级 计科二班 学号 20188442 姓名 吴怡君 完成时间 2019.10.25 评分等级 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)1 ...
- 第六周总结&第四次实验报告
实验四 类的继承 一. 实验目的 (1) 掌握类的继承方法: (2) 变量的继承和覆盖,方法的继承.重载和覆盖实现: 二. 实验内容 三.实验过程 实验代码 package Shiyan4; publ ...
- 第五周总结&第三次实验报告
实验三 String类的应用 实验目的 掌握类String类的使用: 学会使用JDK帮助文档: 实验内容 1.已知字符串:"this is a test of java".按要求执 ...
- 第九周课程总结 & 实验报告(七)
第九周课程总结 一.多线程 1.线程的状态 2.线程操作的相关方法 二.Java IO 1.操作文件的类---File ()基本介绍 ()使用File类操作文件 .RandomAccessFile类 ...
- 第九周学习总结&实验报告七
实验报告: 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负数号票的情况. 实验 ...
- JAVA实验报告及第九周总结
Java第九周作业 实验报告七 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负 ...
- 第七周课程总结 & 实验报告(五)
第七周课程总结 一.抽象类与接口的应用 1.实例化 2.实际应用 ---模板设计(抽象类) ---制定标准(接口) 3.设计模式 ---工厂设计 ---代理设计 ---适配器设计 二.抽象类与接口之间 ...
- 第七周&实验报告五
实验四 类的继承 •实验目的 •理解抽象类与接口的使用: •了解包的作用,掌握包的设计方法. •实验要求 •掌握使用抽象类的方法. •掌握使用系统接口的技术和创建自定义接口的方法. •了解 Java ...
随机推荐
- 解决:java compiler level does not match the version of the installed java project facet错误
java compiler level does not match the version of the installed java project facet错误的解决 因工作的关系,Eclip ...
- pyqt5--QTDesigner--安装与配置
安装: 安装PyQt5-tools 文件--->设置---> ---> 安装之后在 安装目录\Lib\site-packages\pyqt5_tools 找到 designer.e ...
- Spring对单例的底层实现,单例注册表
Spring框架对单例的支持是采用单例注册表的方式进行实现的,源码如下: public abstract class AbstractBeanFactory implements Configurab ...
- css---一个大div中套左右两个div,如何让最高的把最低的撑开?且把父级撑开呢?
到最后实现了效果,但是在理论上感觉还是很牵强,如果哪位大神有方法,请评论指出哦 Html: css:
- 织梦网站 TAG 标签调用
一.TAG 标签在网站上的作用 1.什么是 TAG 标签? TAG 标签是一种由网站管理员自己定义的,比分类更准确.更具体,可以概括文 章主要内容的关键词. 2.TAG 标签作用 读者可以通过文章标签 ...
- floor函数用法
floor(x),也写做Floor(x),其功能是“向下取整”,或者说“向下舍入”,即取不大于x的最大整数(与“四舍五入”不同,下取整是直接取按照数轴上最接近要求值的左边值,即不大于要求值的最大的那个 ...
- Mac 找文件或文件夹,以及开启其他程序,截图快捷键
Mac 图形化界面对操作惯 Win 的人来说比较奇怪. 有一组超级有用的快捷键,control + 空格 按下后会出现一个搜索框,输入计算机上任何你想要找的资源即可打开. 截取全屏:快捷键(Shift ...
- Vue.use源码分析(转)+如何封装一个组件
封装一个组件:https://www.jianshu.com/p/89a05706917a 我想有过vue开发经验的,对于vue.use并不陌生.当使用vue-resource或vue-router等 ...
- maven工程项目与项目之间的依赖方式
首先看一下项目结构: 1.需要在父工程中把子工程为坐标引进来,同时标注父工程为pom工程: 2.同时在父工程中把子工程当作一个模块引进来 3.需要在每一个子项目中通过parent标签,标注 ...
- eclipse 简单配置
1.安装STS4 help-->Eclipse Maketplace-->search 'STS'-->install 2.代码提示 Window-->preferences- ...