实现方式
1.通过继承Thread类实现一个线程。
2.通过实现Runnable接口实现一个线程
3.通过线程池创建线程。
注意:
继承扩展性不强,java总支持单继承,如果一个类继承Thread就不能继承其他的类。
怎么启动?
继承方式简单启动:
package com.cs.Thread_Test;
public class MyThread extends Thread{
@Override
public void run() {
super.run();
System.out.println("run方法执行了:OK");
}
}
class demoTest{
public static void main(String[] args) {
MyThread myThread = new MyThread();
//调用start()方法
myThread.start();
//地二种调用
//Thread thread1 = new Thread(new MyThread());
// thread1.start();
//第三种 实现Runnable接口
Thread thread = new Thread(new Runnable() {
public void run() {
System.out.println("runnable 执行了");
}
});
thread.start();
}
}
启动线程的方法的start()方法,而启动成功之后调用的是run方法.
怎么区分线程?
假如我在一个系统中有很多线程,每个线程都会打印日志,我想区分是那个线程打印的的怎么办?
只需要给线程设置一个线程名称?setName("");这是一个规范,在创建完成后,要设置名称