重写该类的run()方法.然后创建该类的实例,调用start()方法来启动该线程.
Thread.currentThread() 是Thread类的静态方法,返回当前正在执行的线程对象.
实例代码如下:
public class FirstThread extends Thread {
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
}
}
public static void main(String[] args) {
for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
if (i == 20) {
new FirstThread().start();
new FirstThread().start();
}
}
}
}
实现Runnable接口,并重写该接口的run()方法,创建Runnable接口实现类的实例,并以此作为Thread的target来创建Thread对象,并start();
示例代码如下:
public class SecondThread implements Runnable{
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
}
}
public static void main(String[] args) {
for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
if (i == 20) {
SecondThread secondThread = new SecondThread();
new Thread(secondThread).start();
//还可以给线程起名字
new Thread(secondThread, "我的线程").start();
//也可以直接用匿名内部类来写
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("i love you");
}
}).start();
//使用lambda表达式来写
new Thread(() -> System.out.println("Hello"));
}
}
}
}
创建并启动有返回值的线程的步骤如下:
原文:https://www.cnblogs.com/shiguangqingqingchui/p/12092701.html