`
1140566087
  • 浏览: 559077 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
博客专栏
2c4ae07c-10c2-3bb0-a106-d91fe0a10f37
c/c++ 入门笔记
浏览量:18523
3161ba8d-c410-3ef9-871c-3e48524c5263
Android 学习笔记
浏览量:314072
Group-logo
J2ME 基础学习课程集
浏览量:18736
A98a97d4-eb03-3faf-af96-c7c28f709feb
Spring 学习过程记录...
浏览量:17581
社区版块
存档分类
最新评论

Android 之 实现Runnable 接口与继承Thread的区别

阅读更多
                实现Runnable 接口 相对于继承Thread 类的优势

1、适合多个相同程序代码的线程去处理同一资源的情况,把虚拟CPU(线程)同程序的代码,数据有效分离,较好地体现了面向对象的设计思想。


2、可以避免由Java的单继承特性带来的局限性。我们经常碰到了这样的一种情况,即当我们要将已经继承了某一个类的子类放入多线程中,由于一个类不能同时有两个父类,所以不能用Thread类的方式,那么,这个类就只能采用实现Runnable 接口的方式;

3、有利于程序的健壮性,代码能够被多个线程共享,代码与数据是独立的。当多个线程的执行代码来自同一个类的实例时,即称它们共享相同的代码。多个线程操作相同的数据。当线程被构造时,需要代码和数据通过一个对象作为构造函数实参传递进去,这个对象就是一个实现了Runable接口的类的实例;
分享到:
评论

相关推荐

    Android开发笔记之:Handler Runnable与Thread的区别详解

    相比于继承Thread,更常见的做法是实现Runnable接口,因为它允许类同时继承其他类。Runnable接口只有一个run()方法,你需要将实现Runnable的类作为参数传递给Thread的构造函数,然后调用Thread的start()方法来启动...

    Android Studio调用RestfulWCF接口

    在上面的代码中,使用 Thread 来创建新线程,并在 Runnable 接口中实现 doPostByURL 方法,该方法用于发送 POST 请求到远程服务器。 在 doPostByURL 方法中,首先获取 Spinner 和 EditText 的值,并将其封装到 ...

    android之子线程Thread

    2. **Runnable接口**:实现Runnable接口,并在Thread构造函数中传入Runnable实例。例如: ```java Runnable task = new Runnable() { @Override public void run() { // 图片处理逻辑 } }; new Thread(task)...

    Android Thread Handler

    1. **Thread类**:直接继承Thread类并重写`run()`方法。创建新线程后,调用`start()`方法启动。 2. **Runnable接口**:实现Runnable接口并提供`run()`方法。然后,可以将Runnable对象传递给Thread的构造函数,或者...

    Android Thread 介绍与实例

    在Android中创建线程的方式有很多种,如直接继承Thread类、实现Runnable接口、使用Handler和Looper、以及使用更现代的AsyncTask和ExecutorService。这里我们将重点讨论使用Thread和Handler的组合。 在提供的代码...

    Android Thread学习笔记

    ### Android Thread 学习笔记详解 #### Android单线程模型的核心原则 在深入探讨Android中的线程使用之前,我们首先需要理解其核心的单线程模型原则,这为后续的多线程操作提供了基础框架: 1. **不要阻塞UI线程*...

    Android自定义按钮实现长按功能

    new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(LONG_PRESS_DURATION); isLongPressed = true; if (longClickListener != null) { longClickListener.onLongClick...

    android thread 异步操作

    - **Runnable接口**:实现Runnable接口并提供run()方法,然后通过new Thread(new Runnable()).start()创建线程。 #### 1.3 Handler/Looper/Message 为了在子线程中更新UI,可以使用Handler、Looper和Message。...

    Android 多线程下载简单demo之Thread

    本文将基于提供的标题“Android 多线程下载简单demo之Thread”和描述,深入讲解如何实现一个简单的多线程下载功能。这个示例来源于一个CSDN博客,通过访问提供的链接...

    Android 线程thread的两种实现方法(必看)

    本文将详细介绍在Android中实现线程的两种主要方法:扩展`java.lang.Thread`类和实现`Runnable`接口。 **一、扩展`java.lang.Thread`类** 当你创建一个新的类来继承`Thread`时,你需要重写`run()`方法,这个方法...

    android 线程入门教程

    在Android中,可以通过继承Thread类或者实现Runnable接口来创建新的线程。Thread类提供了线程的基本构造和运行机制,而Runnable接口则允许将代码块与线程关联。通常,我们推荐使用Runnable接口,因为相对于继承...

    Android 多线程的实现方法总结

    1. 继承Thread线程,实现run方法 2. 实现Runnable接口 JAVA单继承性,当我们想将一个已经继承了其他类的子类放到Thread中时,单继承的局限就体现出来了 但是可以实现多个接口,所以第二种方法相对于第一种来说...

    Android线程模式(handler,thread,looper)

    2. **Thread**:Thread是Java语言中的基础线程类,Android也继承了这一特性。通过创建一个新的Thread对象并调用其`start()`方法,可以启动一个新的线程。然而,Thread本身并不包含消息循环机制,所以单纯使用Thread...

    android service thread toast handler

    有两种常见的创建线程的方式:继承`Thread`类或实现`Runnable`接口。 `Handler`是Android消息处理机制的一部分,它与`Looper`和`Message`协同工作,用于在不同的线程之间传递消息。在主线程中创建`Handler`实例,...

    Android&Java的线程框架与模式_高焕堂_PDF.rar

    它讲解了Java中的Thread类和Runnable接口,阐述了如何通过继承Thread类或实现Runnable接口来创建自定义线程。此外,还讨论了守护线程(Daemon Threads)和线程优先级等概念。 第二章“Java线程详解”(Thread_Ch02_...

    android studio多线程下载

    - Thread类:直接继承Thread类并重写run()方法,创建新线程。 - Runnable接口:实现Runnable接口,然后在Thread构造函数中传入Runnable对象。 - AsyncTask:更适合轻量级的异步操作,它简化了线程管理和回调,但...

    Android开发之多线程的操作方式

    通过继承Thread类并重写其`run()`方法,然后调用`start()`来启动新线程。例如: ```java class MyThread extends Thread { public void run() { // 在这里执行线程逻辑 } } MyThread thread = new MyThread()...

    Android多线程详解.pdf

    本文将深入探讨Android中的多线程,包括线程类的基本方法、进程与线程的区别、线程间通信以及Java中实现线程的方式。 首先,让我们了解Thread类的一些常用方法: 1. `currentThread()`:返回当前正在执行的线程...

    Java/Android关于线程使用的总结

    `Thread`类继承自`Object`类,它不仅可以直接被继承以创建线程,还可以通过实现`Runnable`接口的方式创建线程。在Android中,`HandlerThread`是`Thread`的一个直接子类,提供了额外的功能,如循环处理消息的能力。 ...

Global site tag (gtag.js) - Google Analytics