Java中线程休眠编程实例
作者:junjie 时间:2021-09-06 11:42:55
import java.awt.*;
import java.util.*;
import javax.swing.*;
public class SleepMethodTest extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private Thread t;
// 定义颜色数组
private static Color[] color = { Color.BLACK, Color.BLUE, Color.CYAN,
Color.GREEN, Color.ORANGE, Color.YELLOW, Color.RED,
Color.PINK, Color.LIGHT_GRAY };
private static final Random rand = new Random();// 创建随机对象
private static Color getC() {// 获取随机颜色值的方法
return color[rand.nextInt(color.length)];
}
public SleepMethodTest() {
t = new Thread(new Runnable() {// 创建匿名线程对象
int x = 30;// 定义初始坐标
int y = 50;
public void run() {// 覆盖线程接口方法
while (true) {// 无限循环
try {
Thread.sleep(100);// 线程休眠0.1秒
} catch (InterruptedException e) {
e.printStackTrace();
}
// 获取组件绘图上下文对象
Graphics graphics = getGraphics();
graphics.setColor(getC());// 设置绘图颜色
// 绘制直线并递增垂直坐标
graphics.drawLine(x, y, 100, y++);
if (y >= 80) {
y = 50;
}
}
}
});
t.start();// 启动线程
}
public static void main(String[] args) {
init(new SleepMethodTest(), 100, 100);
}
// 初始化程序界面的方法
public static void init(JFrame frame, int width, int height) {
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(width, height);
frame.setVisible(true);
}
}
JAVA中的休眠是sleep()方法,本例子中定义了getC()方法,该方法用于随机产生Color类型的对象,并且在产生线程的匿名内部类中使用getGraphics()方法获取Graphics对象,使用该对象调用setColor()方法为图形设置颜色;调用drawline()方法绘制一条线段,同时线段会根据纵坐标的变化自动调整。
标签:Java,线程,休眠
0
投稿
猜你喜欢
Java人民币小写转大写字符串的实现
2021-10-24 00:52:34
C# 显示、隐藏窗口对应的任务栏
2023-06-13 03:57:32
C# WinForm RichTextBox文本动态滚动显示文本方式
2021-09-12 20:44:31
浅谈Java中Map和Set之间的关系(及Map.Entry)
2023-08-25 02:23:48
基于集合的子集与集合的全排列的相关问题
2023-09-23 07:03:46
Java中Druid连接池连接超时获取不到连接的解决
2022-09-15 04:49:59
Android操作SQLite数据库(增、删、改、查、分页等)及ListView显示数据的方法详解
2022-11-28 10:03:09
IntelliJ IDEA2019实现Web项目创建示例
2023-06-05 00:29:33
SpringBoot实现动态多线程并发定时任务
2023-12-12 01:58:26
Unity实现游戏卡牌滚动效果
2023-09-20 10:54:23
Java如何利用递归计算出阶乘
2023-02-08 12:43:03
Spring Boot和Thymeleaf整合结合JPA实现分页效果(实例代码)
2023-11-25 07:05:15
对Java中传值调用的理解分析
2023-05-03 15:22:14
struts2框架的登录制作图文教程
2022-11-24 03:15:15
Java超详细讲解设计模式之一的工厂模式
2023-03-26 21:08:04
Android使用Rotate3dAnimation实现3D旋转动画效果的实例代码
2023-07-30 12:21:29
C#中FileStream的对比及使用方法
2023-10-17 21:09:41
解答为什么 Java 线程没有Running状态
2021-08-25 13:10:33
java后台利用Apache poi 生成excel文档提供前台下载示例
2023-05-15 08:51:45
Java实现读取resources目录下的文件路径的九种方式
2023-11-23 11:47:02