操作线程的方法—— 线程的休眠

package thread;

import java.awt.Color;
import java.awt.Graphics;
import java.util.Random;
import javax.swing.JFrame;
/*
 * 操作线程的方法
 * 线程的休眠
 */
public class SleepMethodTest extends JFrame{
    //声明一个线程对象
    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 ran=new Random();
    //获取随机颜色值得方法
    private static Color getC() {
        return color[ran.nextInt(color.length)];
    }
    public SleepMethodTest() {
        t=new Thread(new Runnable() {
            int x=30;
            int y=50;
            @Override
            public void run() {
                while(true) {
                    try {
                        Thread.sleep(100);
                    } 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(frame.EXIT_ON_CLOSE);
        frame.setSize(width,height);
        frame.setVisible(true);
    }

}

猜你喜欢

转载自blog.csdn.net/qq_41978199/article/details/80631688