每一个进程都必须有一个主线程,在主线程中我们可以创建多个线程。
创建线程的方法有以下几种:
一、继承Thread类
这种方法需要重写run方法,非常简单,但同时会使代码结构混乱而且降低可读性。
package p1;
public class myThread extends Thread{
@Override
public void run(){
System.out.println("create a new thread!");
super.run();
}
}
通过声明创建的新线程然后调用start方法,调用start方法后线程会自动执行run函数中的代码。
package p1;
public class myTest{
public static void main(String[] args){
myThread thread = new myThread();
thread.start();
}
}
二、实现Runnable接口
这种方法也需要重写run方法,但由于实现的是接口,无法像重写Thread实现的那样直接调用start方法启动线程,而需要将线程放在Thread实例中再调用start方法。
package p1;
public class myThread implements Runnable{
@Override
public void run(){
System.out.println("create a new thread!");
}
}
启动线程:
package p1;
public class myTest{
public static void main(String[] args){
myThread thread = new myThread();
new Thread(thread).start();
}
}
三、直接开启线程
package p1;
public class myTest{
public static void main(String[] args){
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("create a new thread!");
}
}).start();
}
}
参考链接:https://blog.youkuaiyun.com/fire_mole/article/details/80781359