java.lang.Runnable 源码分析

Posted Spider-spiders

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java.lang.Runnable 源码分析相关的知识,希望对你有一定的参考价值。

子接口:RunnableFuture<V>, RunnableScheduledFuture<V>

实现类:AsyncBoxView.ChildState, ForkJoinWorkerThread, FutureTask, RenderableImageProducer, SwingWorker, Thread, TimerTask.

有一个 void run() 方法,所有实现类必须实现这个方法。

使用场景:

  • 如果一个类的实例想被Thread执行, 那么这个类必须定义定义一个run方法,所有如果直接implements Runnable接口,则必须实现run方法。
  • 如果这个类不想是Thread的子类,而且想保持简单的形式,那么implements Runnable接口是很好的选择。
public class Bike implements Runnable {
    @Override
    public void run() {
        System.out.println("I am by biking");
    }

    public static void main(String[] args) {
        Bike mybike = new Bike();

        new Thread(mybike, "mybike").start();

        System.out.println("Main...");
    }
}

 

以上是关于java.lang.Runnable 源码分析的主要内容,如果未能解决你的问题,请参考以下文章

Thread 和 Runnable

Runnable接口详解?

Java中的Lambad表达式

线程数

Lombda表达式

Java基础笔记(四:多线程基础及生命周期)