Java中線程休眠編程實例。本站提示廣大學習愛好者:(Java中線程休眠編程實例)文章只能為提供參考,不一定能成為您想要的結果。以下是Java中線程休眠編程實例正文
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()辦法繪制一條線段,同時線段會依據縱坐標的變更主動調劑。