知识点整理 2:多线程详解线程对象是可以产生线程的对象。比如在 Java 平台中 Thread 对象,Runnable 对象。线程,是指正在执行的一个指点令序列。在 java 平台上是指从一个线程对象的 start()开始,运行run 方法体中的那一段相对独立的过程。相比于多进程,多线程的优势有:(1)进程之间不能共享数据,线程可以;(2)系统创建进程需要为该进程重新分配系统资源,故创建线程代价比较小;(3)Java 语言内置了多线程功能支持,简化了 java 多线程编程。一、创建线程和启动 (1)继承 Thread 类创建线程类通过继承 Thread 类创建线程类的具体步骤和具体代码如下:定义一个继承 Thread 类的子类,并重写该类的 run()方法;创建 Thread 子类的实例,即创建了线程对象;调用该线程对象的 start()方法启动线程。classSomeTheadextendsThraad{publicvoidrun(){//dosomethinghere}}publicstaticvoidmain(String[]args){SomeThreadoneThread=newSomeThread();步骤 3:启动线程:oneThread・start();}(2) 实现 Runnable 接口创建线程类通过实现 Runnable 接口创建线程类的具体步骤和具体代码如下:定义 Runnable 接口的实现类,并重写该接口的 run()方法;创建 Runnable 实现类的实例,并以此实例作为 Thread 的 target 对象,即该 Thread 对象才是真正的线程对象。classSomeRunnableimplementsRunnable{publicvoidrun(){//dosomethinghere}}RunnableoneRunnable=newSomeRunnable();ThreadoneThread=newThread(oneRunnable);oneThread・start();(3) 通过 Callable 和 Future 创建线程通过 Callable 和 Future 创建线程的具体步骤和具体代码如下:创建 Callable 接口的实现类,并实现 call()方法,该 call()方法将作为线程执行体,并且有返回值。创建 Callable 实现类的实例,使用 FutureTask 类来包装 Callable 对象,该 FutureTask 对象封装了该 Callable 对象的 call()方法的返回值。使用 FutureTask 对象作为 Thread 对象的 target 创建并启动新线程。调用 FutureTask 对象的 get()方法来获得子线程执行结束后的返回值其中‘Callable 接口(也只有一个方法)定义如下:publicinterfaceCallable{Vcall()throwsException;}步骤 1:创建实现 Callable 接口的类 SomeCallable(略);步骤 2:创建一个类对象:CallableoneCallable=newSomeCallable();步骤 3:由 Callable 仓 U 建一个 ...