JDK源码阅读——java.lang.Runable

本文详细介绍了Java中的Runnable接口,包括其目的、源码解析及实际应用案例。Runnable接口为希望在线程中执行代码的对象提供了一个通用协议,使得实现该接口的类可以被线程启动并执行。文章还提供了一个具体的实现Runnable接口的示例代码。

接口

Runnable

1.概述

public interface Runnable
Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现。类必须定义一个称为 run 的无参数方法。
设计该接口的目的是为希望在活动时执行代码的对象提供一个公共协议。例如,Thread 类实现了 Runnable。激活的意思是说某个线程已启动并且尚未停止。
此外,Runnable 为非 Thread 子类的类提供了一种激活方式。通过实例化某个 Thread 实例并将自身作为运行目标,就可以运行实现 Runnable 的类而无需创建 Thread 的子类。大多数情况下,如果只想重写 run() 方法,而不重写其他 Thread 方法,那么应使用 Runnable 接口。这很重要,因为除非程序员打算修改或增强类的基本行为,否则不应为该类创建子类。

2.源码阅读:

public interface Runnable {
    /**
     * 使用实现接口 Runnable 的对象创建一个线程时,启动该线程将导致在独立执行的线程中调用对 
     * 象的 run 方法。 方法 run 的常规协定是,它可能执行任何所需的动作。
     * @see     java.lang.Thread#run()
     */
    public abstract void run();
}

3.用法

public class SubRunable implements Runnable {
    @Override
    public void run() {

        for (int i = 1; i <=10 ;i++){
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("执行" + i + "次");
        }
      }
}

 public static void main(String[] args){
        Thread thread = new Thread(new SubRunable());
        thread.start();

    }

输出:
执行1次
执行2次
执行3次
执行4次
执行5次
执行6次
执行7次
执行8次
执行9次
执行10次

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值