Java创建线程的五种写法总结

本文主要为大家详细介绍一下Java实现线程创建的五种写法,文中的示例代码讲解详细,对我们学习有一定的帮助,感兴趣的可以跟随小编学习一下

通过继承Thread类并实现run方法创建一个线程

// 定义一个Thread类,相当于一个线程的模板
class MyThread01 extends Thread {
    // 重写run方法// run方法描述的是线程要执行的具体任务@Overridepublic void run() {
        System.out.println("hello, thread.");
    }
}
 
// 继承Thread类并重写run方法创建一个线程
 
public class Thread_demo01 {
    public static void main(String[] args) {
        // 实例化一个线程对象
        MyThread01 t = new MyThread01();
        // 真正的去申请系统线程,参与CPU调度
        t.start();
    }
}

通过实现Runnable接口,并实现run方法的方法创建一个线程

// 创建一个Runnable的实现类,并实现run方法
// Runnable主要描述的是线程的任务
class MyRunnable01 implements Runnable {
    @Overridepublic void run() {
        System.out.println("hello, thread.");
    }
}
//通过继承Runnable接口并实现run方法
 
public class Thread_demo02 {
    public static void main(String[] args) {
        // 实例化Runnable对象
        MyRunnable01 runnable01 = new MyRunnable01();
        // 实例化线程对象并绑定任务
        Thread t = new Thread(runnable01);
        // 真正的去申请系统线程参与CPU调度
        t.start();
    }
}

通过Thread匿名内部类创建一个线程

//使用匿名内部类,来创建Thread 子类
public class demo2 {
    public static void main(String[] args) {
        Thread t=new Thread(){ //创建一个Thread子类 同时实例化出一个对象
            @Override
            public void run() {
                while (true){
                    System.out.println("hello,thread");
                    try {
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }
        };
        t.start();
    }
}

通过Runnable匿名内部类创建一个线程

public class demo3 { //使用匿名内部类 实现Runnable接口的方法
    public static void main(String[] args) {
        Thread t=new Thread(new Runnable() {
 
            @Override
            public void run() {
                while (true){
                    System.out.println("hello Thread");
                    try {
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
 
            }
        });
        t.start();
}
}

通过Lambda表达式的方式创建一个线程

public class demo4 { //使用 lambda 表达式
    public static void main(String[] args) {
        Thread t=new Thread(()->{
            while (true){
                System.out.println("hello,Thread");
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
 
        });
        t.start();
    }
}

到此这篇关于Java创建线程的五种写法总结的文章就介绍到这了,更多相关Java创建线程内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!

本文标题为:Java创建线程的五种写法总结