3.Java创建线程的两种方式

继承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);
        }
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容