资源简介
编写三个线程:各线程分别显示各自的运行时间,第一个线程每隔1秒钟运行一次,第二个每隔5秒钟运行一次,第三个线程每隔10秒钟运行一次。
代码片段和文件信息
package clock;
import java.awt.*;
import javax.swing.*;
import java.util.*;
import java.text.SimpleDateFormat;
public class Clock extends Japplet implements Runnable
{
Thread clockThread1;
Thread clockThread2;
Thread clockThread3;
boolean f1f2f3;
SimpleDateFormat formatter;
Date currentDate1currentDate2currentDate3;
String lastdate1lastdate2lastdate3;
public void init()
{
super.setBackground(Color.LIGHT_GRAY);
formatter=new SimpleDateFormat(“hh:mm:ss“);
currentDate1=new Date();
lastdate3=lastdate2=lastdate1=formatter.format(currentDate1);
clockThread1=new Thread(this“Clock-thread1“);
clockThread2=new Thread(this“Clock-thread2“);
clockThread3=new Thread(this“Clock-thread3“);
clockThread1.start();
clockThread2.start();
clockThread3.start();
}
public void run()
{
boolean flag=true;
while(flag)
{
try
{
if (Thread.currentThread() == clockThread1){
Thread.sleep(1000);
f1 = true;
}
if (Thread.currentThread() == clockThread2){
Thread.sleep(5000);
f2 = true;
}
if (Thread.currentThread() == clockThread3){
Thread.sleep(10000);
f3 = true;
}
super.repaint();
}
catch(InterruptedException e)
{
flag=false;
}
}
}
public void paint (Graphics g)
{
g.setColor(this.getBackground());
if (f1){
currentDate1=new Date();
lastdate1=formatter.format(currentDate1);
g.fillRect(5 0 50 10);
f1 = false;
}
if (f2){
currentDate2=new Date();
lastdate2=formatter.format(currentDate2);
g.fillRect(125 0 50 10);
f2 = false;
}
if (f3){
currentDate3=new Date();
lastdate3=formatter.format(currentDate3);
g.fillRect(225 0 50 10);
f3 =false;
}
g.setColor(getForeground());
g.drawString(lastdate1510);
g.drawString(lastdate212510);
g.drawString(lastdate322510);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 10545 2018-06-22 17:01 11.8(3)\20180622170129.png
文件 2484 2018-06-22 17:01 11.8(3)\Clock.class
文件 2487 2018-05-24 16:35 11.8(3)\Clock.java
文件 19968 2018-06-22 17:02 11.8(3)\Thumbs.db
文件 141 2018-06-22 17:01 11.8(3)\java.policy.ap
目录 0 2018-09-28 14:34 11.8(3)\
相关资源
- 三线程随机显示26个字母
- IBM Rational 全套 License 破解 upd
- 九部前端工具库发现有价值的前端工
- 基于miniprogramwebpackloader的小程序脚手
- Draggable打造跨平台的轻量级原生JS拖拽
- 短小精悍的前端缓存插件解决前端缓
- 将一个vue文件编译成js文件的工具
- H5唤起原生APP
- 配合elementuiupload组件支持分片上传功
- 小程序图书馆预约管理项目
- VUE全家桶vue2vueroutervuexaxios
- 教务系统微信小程序
- 小程序云开发项目私房书柜
- luogu冬日画板自动绘图脚本使用TS重写
- 简单查单词小程序
- 微信小程序仿豆瓣电影豆瓣评分
- 一个解决threeJs模块化开发问题的web
- vue全家桶开发webapp音乐播放器
- WechatApp微信小程序wxapkg解包及相关文
- xchart是一个可拖拽放大缩小的数据可
- vue全家桶仿网易云音乐Demo
- CSS3奇思妙想单标签实现各类图形
- vue上传demo支持多选拖拽上传
- 微信小程序微租车
- 粒子群优化算法编码
- 学子商城项目.rar
- robocode智能坦克代码
- 围棋人人对战
- Git教学视频详解
- springboot+webuploader 实现大文件切片上传
评论
共有 条评论