• 多线程----Runnable接口


    创建线程方式—实现Runnable接口

    创建线程的另一种方法是声明实现 Runnable 接口的类。该类然后实现 run 方法。

    然后创建Runnable的子类对象,传入到某个线程的构造方法中,开启线程。

     

    线程步骤

    1、定义类实现Runnable接口。

    2、覆盖接口中的run方法。。

    3、创建Thread类的对象

    4、将Runnable接口的子类对象作为参数传递给Thread类的构造函数。

    5、调用Thread类的start方法开启线程。

     

    实例

    public class Demo02 {

        public static void main(String[] args) {

            //创建线程执行目标类对象

            Runnable runn = new MyRunnable();

            //将Runnable接口的子类对象作为参数传递给Thread类的构造函数

            Thread thread = new Thread(runn);

            Thread thread2 = new Thread(runn);

            //开启线程

             thread.start();

            thread2.start();

            for (int i = 0; i < 10; i++) {

               System.out.println("main线程:正在执行!"+i);

            }

        }

    }

    l  自定义线程执行任务类

    public class MyRunnable implements Runnable{

     

        //定义线程要执行的run方法逻辑

        @Override

        public void run() {

           

            for (int i = 0; i < 10; i++) {

               System.out.println("我的线程:正在执行!"+i);

            }

        }

    }

     

     实现Runnable的好处

    实现Runnable接口的方式,更加的符合面向对象,

    线程分为两部分,一部分线程对象,一部分线程任务。

    线程内部类使用

    l  方式1:创建线程对象时,直接重写Thread类中的run方法

            new Thread() {

               publicvoid run() {

                   for (int x = 0; x < 40; x++) {

                       System.out.println(Thread.currentThread().getName()

                               + "...X...." + x);

                   }

               }

            }.start();

     

    l  方式2:使用匿名内部类的方式实现Runnable接口,重新Runnable接口中的run方法

            Runnable r = new Runnable() {

               publicvoid run() {

                   for (int x = 0; x < 40; x++) {

                       System.out.println(Thread.currentThread().getName()

                               + "...Y...." + x);

                   }

               }

            };

            new Thread(r).start();

  • 相关阅读:
    面试干货——年底干货大放送,你准备好了吗?(转)
    JavaScript学习 三、变量、作用域和内存
    JavaScript学习 二、基础
    JavaScript学习 一、简介
    从统计看机器学习常见算法
    [zz]unity 性能优化
    游戏统计指标
    [zz]sql优化相关
    [zz]sql语句执行顺序
    unity 链接
  • 原文地址:https://www.cnblogs.com/1997WY/p/10707330.html
Copyright © 2020-2023  润新知