博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
多线程
阅读量:4700 次
发布时间:2019-06-09

本文共 1486 字,大约阅读时间需要 4 分钟。

方法一:

/*** 如何创建多线程* 1.定义一个类继承Thread类* 2.覆盖Thread类中的run方法* 3.直接创建Thread的子类对象创建线程* 4.调用start方法开启线程并调用线程的任务run方法执行 * @author 罗摩衔那**/class Demo6 extends Thread{private String name;Demo6(String name){super(name);//调用的是父类的Thread(String name)方法,获取的是线程名//this.name=name;}public void run() {show();}public void show() {for (int i = 0; i < 10; i++) {//可以通过Thread的getName获取线程的名称 Thread-(从0开始)//获取当前线程的名字System.out.println(name+"....i"+i+" name:"+Thread.currentThread().getName());}}}public class Demo5 {public static void main(String[] args) {Demo6 d1=new Demo6("小黑");Demo6 d2=new Demo6("heima");d1.start();//开启线程线程d2.start();System.out.println("over...."+Thread.currentThread().getName());}}

  

 

方法二:

/*** 创建线程的第二种方式:实现Runnable接口* * 1.定义类实现Runnable接口* 2.覆盖接口中的run方法,将线程任务代码封装在run方法中* 3.通过Thread类创建线程对象,并将Runnable接口的对象作为Thread类的构造函数的参数进行传递* 为什么? 因为线程的任务都封装在Runnable接口子类对象的run方法中* 所以要在线程对象创建时就必须明确要运行的任务* * 4.调用线程对象的start()方法* @author 罗摩衔那**/class PiKaQiu implements Runnable{
//准备扩展PiKaQiu类的功能,让其中的内容可以作为线程的任务执行//通过接口的形式完成public void run() {show();}public void show(){for(int i=0;i<10;i++) {System.out.println(Thread.currentThread().getName()+"...."+i);}}}public class Thead_Implement {public static void main(String[] args) {PiKaQiu p=new PiKaQiu();/*** public Threa(Runnable target)* 分配新的Thread对象.* * Thread pkq=new PiKaQiu();拥有了run方法 */Thread pkq=new Thread(p);Thread pkq1=new Thread(p);pkq.start();pkq1.start();System.out.println("aa");}}

 

转载于:https://www.cnblogs.com/zjm1999/p/9839061.html

你可能感兴趣的文章
css 禁止点击事件触发
查看>>
tap 事件会触发两次问题
查看>>
Invalid HTTP_HOST header: 'xxx.xxx:8000'. You may need to add 'xxx.xx' to ALLOWED_HOSTS
查看>>
纯 css 控制隔行变色
查看>>
本地启动服务,两个进程分别监听两个端口,导致两个 URL 不同
查看>>
js 实现多文件批量下载
查看>>
<input type="file"> accept属性筛选文件类型
查看>>
ElementUI 之 DatePicker 日期限制范围 disabledDate
查看>>
ElementUI 之 Message,自动弹出,信息不显示问题
查看>>
Vue IE11 报错 Failed to generate render function:SyntaxError: 缺少标识符 in
查看>>
ElementUI 之 Cascader 级联选择器指定 value label
查看>>
django 渲染模板与 vue 的 {{ }} 冲突解决方法
查看>>
随手写一个获取验证码倒计时的效果
查看>>
vue3.0中的双向数据绑定方法
查看>>
Laravel图片上传出现 symlink (): Input/output error 解决方案
查看>>
Debian终端乱码解决办法
查看>>
Mac下Vim编辑快捷键小结
查看>>
CF1178E Archaeology
查看>>
CF1179B Tolik and His Uncle
查看>>
CF787D Legacy
查看>>