继承Thread 类
** 步骤如下 **
1.继承Thread类
2.重写run方法(任务代码执行的方法)
3.创建自定义线程类,然后调用start方法才会启动线程去调用run方法
** 代码如下 **
public class CustomThread extends Thread{
//初始化线程名字的构造方法
public CustomThread(String name){
//调用父类的方法
super(name);
}
@Override
public void run() {
for (int i = 0; i <100 ; i++) {
System.out.println(this.getName()+i);
}
}
public static void main(String[] args) {
CustomThread customThread = new CustomThread("定义线程");
customThread.start();
}
}
实现Runable类
** 步骤如下 **
1.implement Runable 类
2.重写Run方法 (任务执行的代码放在run里面)
3.创建自定义的类,然后将定义好的线程类作为参数传给 Thread类中
4.调用线程类的Start方法
注意几点:
疑问1:Runable实现类是线程类吗? (只有线程的有Start方法)
1.Runable实现类并不是一个线程对象,只不过实现了Runable接口的对象而已
疑问2: 为什么要将runable实现的对象作为参数传递给Thread对象:
2.把Runable实现类的对象的run方法作为了任务代码去执行了
** 代码如下 **
public class RunableThread implements Runnable {
@Override
public void run() {
for (int i = 0; i <100 ; i++) {
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
public static void main(String[] args) {
RunableThread runableThread = new RunableThread();
//将定于的线程类作为参数传递给Thread类的参数
Thread thread = new Thread(runableThread,"线程A");
thread.start();
for (int i = 0; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}