您的位置:首页 > 编程语言 > Java开发

java 通过 Runnable 的接口 实现了 多线程

2017-03-22 22:46 465 查看
package com.js;
import java.awt.Container;
import java.net.URL;
import javax.swing.*;
public class Java_4_Thread_Runnable extends JFrame {// 继承了 swing 类
private JLabel jl = new JLabel();// 声明 JLabel对象
private static Thread t;// 声明线程对象
private int count = 0; // 声明计算变量
private Container container = getContentPane();//声明容器
public Java_4_Thread_Runnable(){
setBounds(300,200,250,100);// 绝对定位窗体大小与位置
container.setLayout(null);// 使窗体不使用任何布局管理器
URL url = Java_4_Thread_Runnable.class.getResource("1.png");// 获取图片的URL
Icon icon = new ImageIcon(url);//实例化一个Icon
jl.setIcon(icon);// 将图标放置在标签中
// 设置图片在标签的最左方
jl.setHorizontalAlignment(SwingConstants.LEFT);
jl.setBounds(10,10,200,50);
jl.setOpaque(true);//
t = new Thread(new Runnable(){// 定义匿名内部类,该类实现 Runnable 接口
public void run(){// 重写 run() 方法
while(count < 200){// 设置循环条件
jl.setBounds(count, 10, 200, 50);// 将标签的横坐标用变量表示
try{
Thread.sleep(1000);//使线程休眠1000毫秒
}catch(Exception e){
e.printStackTrace();
}
count += 4;// 使横坐标每次增加4
if(count == 200){
count = 10;// 当图标到达标签的最右边时,使其图标标签最左边
}
}
}
});
t.start();// 启动线程
container.add(jl);// 将标签添加到容器中
setVisible(true);//使窗体可见
// 设置窗体的关闭方式
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

}

public static void main(String[] args) {
// TODO 自动生成的方法存根
new Java_4_Thread_Runnable();// 实例化 一个 对象

}

}




重点:

使用 new Thread 方式,

创建内部匿名类 new Runnable(){}

重新 内部的 run 方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐