`

JAVA基础(多线程Thread和Runnable的使用区别

阅读更多
Runnable是Thread的接口,在大多数情况下“推荐用接口的方式”生成线程,因为接口可以实现多继承,况且Runnable只有一个run方法,很适合继承。

在使用Thread的时候只需要new一个实例出来,调用start()方法即可以启动一个线程。
Thread Test = new Thread();
Test.start();

在使用Runnable的时候需要先new一个继承Runnable的实例,之后用子类Thread调用。
Test impelements Runnable
Test t = new Test();
Thread test = new Thread(t);

在某个题目里,需要分别打印出a与b各10次,并且每打印一次a睡1秒,打印一次b睡2秒。

可以在run方法外面定义String word与int time
之后用
Thread t1 = new Thread();
Thread t2 = new Thread();

t1.word = "a"
t1.time = 1000

t2.Word = "b"
t2.time = 2000

t1.start();
t2.start();

----Runnable的代码

class T implements Runnable{
String s = "";
int time = 0;
public void run (){
   for (int i=0;i<10;i++) {
    try {
     Thread.sleep(time);
    } catch (InterruptedException e) {
     Thread.interrupted();
    }
    System.out.println(s);
   }
}
}
public class Test {
public static void main(String[] args) {
   T t1 = new T();
   T t2 = new T();
   t1.s = "a";
   t1.time = 100;
   t2.s = "b";
   t2.time = 200;
   Thread a = new Thread(t1);
   a.start();
   Thread b = new Thread(t2);
   b.start();
 
}
}
分享到:
评论
5 楼 Atone2011 2011-11-04  
看明白了
Thread实现了Runnable
需要使用Runnable的地方可以直接使用thread
单独使用Runnable时要先把run方法实现了
不能说使用那个更好,要看在什么地方使用最合适
4 楼 Link028 2011-10-13  
我的理解:Runnable只是申明了一个接口,表示可以被Thread对象执行,Thead是一个完整的线程对象
3 楼 luochuang 2011-07-06  
java 是单根继承 实现多线程有两种实种方式一种是继承 thread 类 另一种就是实现Runnable接口 如果这个类还要继承其他的类的时候 这时候是不允许继承的。 此时就可以使用实现接口的方式,况且 Runnable接口中只有一个空的run()方法。比较适合实现。
2 楼 zhangrun 2009-10-15  
1 说反了
1 楼 duanyong 2008-12-13  
还是没有看明白Thread与Runnable有啥区别呢?


个人觉得Thread比Runnable灵活一点。。。

相关推荐

    JAVA中使用Thread类和Runnable接口创建多线程

    在Java中创建线程有两种方法:使用Thread类和使用Runnable接口。在使用Runnable接口时需要建立一个Thread实例。因此,无论是通过Thread类还是Runnable接口建立线程,都必须建立Thread类或它的子类的实例。

    java 多线程Thread与runnable的区别

    Java 多线程 Thread 与 Runnable 的区别 Java 多线程技术是 Java 语言中的一种基础技术,用于实现多任务并发执行的功能。在 Java 中,实现多线程有两种方法:继承 Thread 类和实现 Runnable 接口。在本文中,我们将...

    java多线程Runnable实例

    本实例将深入讲解如何使用`Runnable`接口来实现多线程,并通过具体的`TestRunnable.java`源代码进行演示。 一、`Runnable`接口简介 在Java中,`Runnable`接口位于`java.lang.Runnable`包下,它定义了一个单一的方法...

    Java中Runnable和Thread的区别

    在Java编程语言中,多线程的实现有多种方式,其中最常见的是通过继承`Thread`类和实现`Runnable`接口。这两种方法各有其特点和适用场景,理解它们之间的区别对于编写高效、可维护的多线程应用至关重要。 ### 继承...

    【java学习记录】11.多线程实现阶乘计算(Thread类和Runnable接口)

    总结来说,Java中的`Thread`类和`Runnable`接口提供了两种创建多线程的方式,它们都可用于实现阶乘计算。理解这些基础概念是进行并发编程的关键,也是提升程序效率的重要手段。在实际应用中,应根据项目需求和最佳...

    多线程的Runnable_和thread有什么区别

    ### 多线程的Runnable与Thread的区别 在Java中实现多线程有两种主要方式:一种是继承`Thread`类;另一种是实现`Runnable`接口。本文将深入探讨这两种方法的区别,帮助初学者更好地理解并选择适合场景的多线程实现...

    thread 线程类 实现runnable接口

    "Thread 线程类实现 Runnable 接口" Thread 线程类是 Java 中 Thread 和 Runnable 接口的实现,它提供了线程的基本操作和管理。...开发者可以使用 Thread 类来创建和管理线程,以实现多线程编程。

    java线程_Thread_Runnable

    在Java编程中,线程是程序执行的最小单元,它允许一个应用程序同时执行多个任务。Java提供了两种创建线程的方式:继承Thread类和实现...理解并熟练掌握这些概念和方法,对于编写高性能的多线程Java应用程序至关重要。

    Java多线程技术 线程的死锁,详细阐述了多线程的两种实现方法: 由Thread类派生子类;实现Runnable接口

    ### Java多线程技术详解 #### 一、引言 多线程编程是现代软件开发中不可或缺的一部分,尤其是在Java这样的面向对象编程语言中尤为重要。Java提供了丰富的API支持多线程编程,使得开发者能够轻松地创建复杂的并发...

    java基础多线程练习题(1)

    在Java编程语言中,多线程是核心特性之一,它使得程序可以同时执行多个不同的任务,从而提高了系统资源的利用率和程序的...在解决这些练习题的过程中,记得结合理论知识和实践操作,不断巩固和提高你的Java多线程技能。

    javad多线程

    在 Java 中,多线程编程可以通过 Thread 类和 Runnable 接口来实现。 为什么需要多线程? 在单线程程序中,如果某个任务需要很长时间来执行,那么整个程序将被阻塞,无法响应用户的其他请求。使用多线程编程可以...

    JAVA多线程Thread和Runnable的实现

    在Java编程语言中,创建和管理多线程是并发编程的核心技能之一。有两种主要的方式可以实现...无论哪种方式,都需要理解线程的生命周期、同步和通信机制,以及如何安全地启动和停止线程,这些都是Java多线程编程的基础。

    JAVAJAVA多线程教学演示系统论文

    2. **JAVA多线程API**:论文会详细阐述JAVA提供的多线程API,如Thread类、Runnable接口、ExecutorService和Future接口等。通过实例解析这些类和接口的使用方法,帮助读者理解如何在实际编程中创建和管理线程。 3. *...

    java多线程、通信机制、Thread类以及Runnable接口间的使用实例

    1. 写两个线程,一个线程打印1-52,另一个线程打印字母A-Z。打印顺序为12A34B56C……5152Z。 学习线程之间的通信协调关系。 2. 使用 runnable 接口实现按两... 使用继承Thread类方式和实现Runnable接口两种方式实现。

    java多线程的讲解和实战

    Java多线程是Java编程中的重要概念,尤其在如今的多核处理器环境下,理解并熟练掌握多线程技术对于提高程序性能和响应速度至关重要。本资料详细讲解了Java多线程的原理,并提供了丰富的实战代码,非常适合Java初学者...

    Java有两种实现多线程的方式:通过Runnable接口、通过Thread直接实现,请掌握这两种实现方式,并编写示例程序。

    在Java中,实现多线程的两种主要方式分别是:**通过继承`Thread`类** 和 **实现`Runnable`接口**。下面将详细介绍这两种方式,并提供相应的示例程序。 #### 一、通过继承`Thread`类实现多线程 在Java中,可以通过...

    Java多线程机制(讲述java里面与多线程有关的函数)

    Java多线程机制是Java编程中至关重要的一部分,它允许程序同时执行多个任务,提升应用程序的效率和响应性。以下是对各个知识点的详细说明: 9.1 Java中的线程: Java程序中的线程是在操作系统级别的线程基础上进行...

    Java多线程知识点总结

    总之,掌握Java多线程的生命周期、创建、启动、同步以及线程池的使用是编写高效、稳定并发程序的基础。理解这些知识点对于解决并发编程中的问题,比如资源竞争、死锁、线程安全性等问题,至关重要。在实际开发中,...

Global site tag (gtag.js) - Google Analytics