创建线程的第二种方式------实现Runnable接口的方式

Posted newcityboy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建线程的第二种方式------实现Runnable接口的方式相关的知识,希望对你有一定的参考价值。

package cn.itcast.demo16.Demo07.Runnable;

/**
* @author newcityman
* @date 2019/7/22 - 23:17
*/
public class RunnableImpl implements Runnable
@Override
public void run()
for (int i = 0; i <20 ; i++)
System.out.println(Thread.currentThread().getName()+"---->"+i);




package cn.itcast.demo16.Demo07.Runnable;

/**
* @author newcityman
* @date 2019/7/22 - 23:17
*/
public class RunnableImpl2 implements Runnable
@Override
public void run()
for (int i = 0; i <20 ; i++)
System.out.println("hello world---->"+i);





package cn.itcast.demo16.Demo07.Runnable;

/**
* @author newcityman
* @date 2019/7/22 - 23:18
* 创建多线程的第二种方式:实现Runnable接口
* java.lang.Runnable
* Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现。类必须定一个称为run的无参方法
* java.lang.Thread类的构造方法
*
*
* 实现步骤:
* 1、创建一个Runnable接口的实现类
* 2、在实现类中重写Runnable接口的run方法,设置线程任务
* 3、创建一个Runnable实现类的对象
* 4、创建一个Thread类对象,其构造方法的参数传递Runnable实现类的对象
* 5、调用Thread类中的start()方法
*
* 实现Runnable接口创建多线程的优点
* 1、避免单继承的局限性
* 一个类只能继承一个类,类继承了Thread类就不能够继承其他的类了
* 实现Runnable接口,还可以继承其他的类,实现其他的接口
* 2、增强了程序的扩展性,降低了程序的耦合性(解耦)
* 实现Runnable接口的方式,吧设置线程任务和开启线程进行了分离(解耦)
* 实现类中,重写了run方法,用来设置线程任务
* 创建Thread类对象,调用Start方法,用来开启新线程
*/
public class Demo01Runnable
public static void main(String[] args)
RunnableImpl impl = new RunnableImpl();
Thread t = new Thread(impl);
t.start();
System.out.println("=========================");
new Thread(new RunnableImpl2()).start();
for (int i = 0; i <20 ; i++)
System.out.println(Thread.currentThread().getName()+"---->"+i);




 

以上是关于创建线程的第二种方式------实现Runnable接口的方式的主要内容,如果未能解决你的问题,请参考以下文章

线程创建的第二种方法

创建对象的第二种方式:克隆clone,要实现Cloneable接口

Java多线程的第二种方式--接口

Java第九天

Unsafe.putOrderedXXX系列方法详解(数组赋值的第二种方式)

Java 创建线程