我一共有七个问题

来源:5-3 作业题

LexieMIZUKI

2019-03-08 09:49:08

  1. 为什么我的读取会有这么多,生成和读取不能成对出现?

  2. 为什么有的时候会先读取再生成?

  3. 为什么随机生成数据不可以写在if(flag)里面?

  4. 为什么weather里面的读取数据read方法可以只写一个if(flag)和wait(),不写get数据也可以运行?

  5. 而且请问线程类继承Thread或添加接口Runnable效果是一样的吗?

  6. 为什么我看大家的程序开始设置flag都是false,true不可以吗,逻辑到底要怎么样才正确?

  7. 最后一个问题就是,我这个程序要怎么改才可以有演示效果那样的结果?

谢谢大家啦!!!!!

注意:由于上传顺序有误,看图顺序:32154

http://img.mukewang.com/climg/5c81c9ad0001321905240536.jpg

http://img.mukewang.com/climg/5c81c9ae0001eb4005370579.jpg

http://img.mukewang.com/climg/5c81c9ae000134da06470554.jpg

http://img.mukewang.com/climg/5c81c9af0001c0e006000276.jpg

http://img.mukewang.com/climg/5c81c9ae0001340905720528.jpg


写回答

2回答

好帮手慕雪

2019-03-08

1)赋值,赋反了哦,所以导致你的生成与读取不能成对儿的出现

http://img.mukewang.com/climg/5c81d73d00015f9a03810434.jpg

2)另外System.out.print()要放在read()和generate()中写不要放在线程中。这也是不能成对儿出现的另一下原因。

3)是先生成数据还是先读取数据,这取决于你的flag初始值。这也是你问的第6个的问题。你得先生成数据啊,要不然去读什么呢?那怎么能先生成数据呢,那就得让generate()的flag那里不为真。也就是让初始值为假。

4)wait(100),wait(500)?你怎么知道500毫秒后就可以去读或写了?你是无法保证这一点的。把那个毫秒数去掉。

5)为什么会输出那么多的内容,这取决于你

http://img.mukewang.com/climg/5c81d8000001ee4702970177.jpg


6)线程类继承Thread或添加接口Runnable效果都是一样的。祝:学习愉快

1
hexieMIZUKI
回复
hrista23
h 好的,谢谢啦
h019-03-11
共7条回复

irista23

2019-03-10

第四个问题,因为run中执行了输出语句并输出w2对象,而w2又重写了toString()

http://img.mukewang.com/climg/5c8478ba0001235506660364.jpg

0

0 学习 · 7235 问题

查看课程