Java多线程基础篇(02)-多线程的实现
1.概要 JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。本节,我们将探讨常用的实现多线程的2种方式:Thread和Runnable。至于第三种ExecutorService、Callable、Future的实现是属于java.util.concurrent包下的内容,我将单独设置一节去探讨。 2.Runnable简介 2.1 Runnable概述 Runnable是一个接口,该接口只包含了一个run无参方法。设计该接口的目的是为希望在活动时执行代码的对象提供一个公共协议。例如,Thread类实现了Runnable。激活的意思是说某个线程已经启动并且尚未停止。 此外Runnable为非Thread子类的类提供了一种激活方式。通过实例化某个Thread实例并将自身作为运行目标,就可以运行实现Runnable的类而无须创建Thread的子类。大多数情况下,如果只想重写run()方法,而不重写其他Thread方法,那么应使用Runnable接口。 这很重要,因为除非程序猿打算修改或增强类的基本行为,否则不应该创建子类。 2.2 Runnable源码 package java.lang; public