91名师指路-头部
91名师指路

跟着波波老师学多线程高并发(二)创建多线程的几种方式

由于某些原因,现在不支持支付宝支付,如需要购买源码请加博主微信进行购买,微信号:13248254750

创建多线程的方式:

(1)继承Thread类。继承Thread类重写run方法。

(2)实现Runnable接口。

(3)使用匿名内部类。

(4)callable。

(5)使用线程池。


一:继承Thread类代码如下:

package com.mszl.controller;

/**
* 更多资料请访问http://www.91mszl.com
* @author bobo teacher
*/
class createThread extends Thread{
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("son " + i);
}
super.run();
}
}

public class Demo1{
public static void main(String[] args) {
createThread d1=new createThread();
d1.start(); // 启动线程是用start(),而不是run()
for (int i = 0; i < 10; i++) {
System.out.println("father " + i);
}
}


}


执行结果:


备注:

1 启动线程是用start(),而不是run()。

2 开启多线程后,代码不会从上往下的执行。


二:实现Runnable 接口的代码如下:

package com.mszl.controller;

/**
* 更多资料请访问http://www.91mszl.com
* @author bobo teacher
*/
class createRunnable implements Runnable{

public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("子线程" + i);
}
}
}

public class Demo2{
public static void main(String[] args) {
createRunnable c1=new createRunnable();
Thread t=new Thread(c1);
t.start();
for (int i = 0; i < 10; i++) {
System.out.println("父线程" + i);
}
}


}


执行结果:


三:使用匿名内部类代码如下:

package com.mszl.controller;

/**
* 功能:匿名内部类
* 更多资料请访问http://www.91mszl.com
* @author bobo teacher
*/
public class Demo1{

public static void main(String[] args) {

Thread d1=new Thread(new Runnable() {
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("子线程" + i);
}
}
});

d1.start();
for (int i = 0; i < 10; i++) {
System.out.println("父线程" + i);
}
}


}


执行结果:


2019-11-19 09:43:04     阅读(855)

名师出品,必属精品    https://www.91mszl.com

联系博主    
用户登录遮罩层
x

账号登录

91名师指路-底部