java多线程的两种创建方式

方式一:继承Thread类

1.创建一个继承于Thread类的子类
2.重写Thread类的run()方法—> 将此线程执行的操作声明在run()中
3.创建Thread类的子类的对象
4.通过此对象调用start()方法开启线程

//1.创建一个继承于Thread类的子类
public class ThreadDemo extends Thread {
    //2.重写Thread类的run()方法---> 将此线程执行的操作声明在run()中
    @Override
    public void run() {
        for (int i = 0; i < 5; i++) {
            System.out.println("子线程执行输出:"+i);
        }
    }
}

//主类
public class test {
    public static void main(String[] args) {
        //3.创建Thread类的子类的对象
        Thread threadDemo = new ThreadDemo();
        //4.通过此对象调用start()方法开启线程
        threadDemo.start();

        //主线程任务
        for (int i = 0; i < 5; i++) {
            System.out.println("主线程执行输出:"+i);
        }
    }
}

方式二:继承Runnable接口

1.创建一个实现Runnable接口的类
2.实现类去实现Runnable中的抽象方法:run()
3.创建实现类的对象
4.将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象
5.通过Thread类的对象调用start()

//1.创建一个实现Runnable接口的类
public class ThreadDemo implements Runnable {
    //2.实现类去实现Runnable中的抽象方法:run()
    @Override
    public void run() {
        for (int i = 0; i < 5; i++) {
            System.out.println("子线程执行输出:"+i);
        }
    }
}

//主类
public class test {
    public static void main(String[] args) {
        //3.创建实现类的对象
        ThreadDemo threadDemo = new ThreadDemo();
        //4.将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象
        Thread t1 = new Thread(threadDemo);
        //5.通过Thread类的对象调用start()
        t1.start();

        //主线程任务
        for (int i = 0; i < 5; i++) {
            System.out.println("主线程执行输出:"+i);
        }
    }
}

Original: https://www.cnblogs.com/laomama/p/16619973.html
Author: 老_码
Title: java多线程的两种创建方式

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/609468/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球