关于多线程:2-线程的两种实现方式

1. 线程的两种实现形式

  • 继承Thread类
//继承Thread类
    static class MyThread1 extends Thread{
        @Override
        public void run() {
            System.out.println("继承Thread实现本人的线程");
        }
    }
  • 实现Runnable接口
//实现Runnable接口
    static class MyThread2 implements Runnable{
        @Override
        public void run() {
            System.out.println("实现Runnable接口实现本人的线程");
        }
    }

2.线程的启动

public static void main(String[] args) {
        //1.通过继承Thread创立本人的线程并且启动
        new MyThread1().start();

        //2.通过实现Runnable,创立本人的线程并且启动
        new Thread(new MyThread2()).start();

        //3.通过匿名外部类创立线程
        new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("匿名外部类实现的线程");
            }
        }).start();

        //4.lambda表达式创立线程
        new Thread(()->{
            System.out.println("通过");
        }).start();

    }

留神 不论用哪种形式实现本人的线程,最终要启动线程必须得通过Thread.start()办法启动,start()办法会把线程交给CPU去调度执行,只有当CPU调度到线程把工夫片调配给它,线程才会执行。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理