专栏首页人生得意须尽欢Java 不支持多继承,通过实现Runnable接口
原创

Java 不支持多继承,通过实现Runnable接口

public class MyRunnable implements Runnable {
	@Override
	public void run() {
		System.out.println("运行中!");
	}
}
public class Run {
	public static void main(String[] args) {
		Runnable runnable=new MyRunnable();
		Thread thread=new Thread(runnable);
		thread.start();
		System.out.println("运行结束!");
	}
}

输出:

运行结束!
运行中!

  在这里说明一下Thread.java类的构造函数:

  注意上面的代码中不可以runnable.start(),因为Runnable接口中的唯一方法就是run方法。Thread.java构造函数支持传人一个Runnable接口的对象。由于Thread 实现 Runnable 接口,构造函数Thread(Runnable target)不光可以传人Runnable接口的对象,还可以传入一个Thread类的对象,这样做完全可以将一个Thread对象中的run()方法交由其他的线程进行调用。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

关注作者,阅读全部精彩内容

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java 继承Thread类和实现Runnable接口的区别

    ava中线程的创建有两种方式: 1.  通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2.  通过实现Runnabl...

    xiangzhihong
  • Java中实现多线程继承Thread类与实现Runnable接口的区别

    1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中

    孙晨c
  • Java多线程-通过实现 Runnable 接口来创建线程

    你可以重写该方法,重要的是理解的 run() 可以调用其他方法,使用其他类,并声明变量,就像主线程一样。

    joshua317
  • Android多线程:继承Thread类 & 实现Runnable接口 使用解析(含实例教程)

    很多情况下,开发者会选择一种更加方便的方法去创建线程:**匿名类**

    Carson.Ho
  • Java运行时多态性:继承和接口的实现

    image.png Java是面向对象的语言,而运行时多态性是面向对象程序设计代码重用的一个最强大机制,动态性的概念也可以被说成“一个接口,多个方法”。Ja...

    java达人
  • java线程

    1.继承Thread类,重写THread类中的run()方法,直接创建线程; 2.实现Runnable接口,再通过Thread类和Runnable的实现类间接...

    德勒
  • 2020 最新整理的 50 到 Java 线程面试题!

    线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比...

    业余草
  • Java 多线程学习(1)——实现多线程的两种方式Thread/Runnable

    实现多线程的方式主要有两种,一种是继承Thread类,另一种是实现Runnable接口。 首先看一下Thread类的结构

    胡了了
  • Java中实现多线程的3种方法介绍和比较

    黄小怪
  • Android 多线程的实现方法总结

    JAVA单继承性,当我们想将一个已经继承了其他类的子类放到Thread中时,单继承的局限就体现出来了

    砸漏
  • 进程和多线程的概念及线程的优点

    Thread类实现了 Runnable接口,它们之间具有多态关系。其实,使用继承Thread类的方式创建新线程时,最大的局限就是不支持多继承,因为 Java...

    用户7365393
  • Java实现多线程的两种方式比较及区别

    黑泽君
  • Java初学者必知:Java语言的11大特点

    Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的静态语言。那么java语言的特点是什么呢?

    哲洛不闹
  • Java的主要特性有哪些?

    Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操...

    用户7886150
  • 快速掌握并发编程---基础篇

    进程的本质是一个正在执行的程序,程序运行时系统会创建一个进程,并且给每个进程分配独立的内存地址空间保证每个进程地址不会相互干扰。同时,在 CPU 对进程做时间片...

    田维常
  • Java基础面试题及答案

    Java是支持并发,基于类的以及面向对象的一种计算机编程语言. 以下列举了面向对象编程的优势:

    用户7886150
  • Java线程池深度揭秘

    Executor 是一个接口(主要用于定义规范),定义了 execute 方法,用于接收 Runnable 对象。

    一猿小讲
  • 多线程的实现方法

          从Thread类中实例化的对象即代表线程,启动一个线程就是建立一个Thread实例。因为完成线程真正功能的代码放在类的run()方法中,所以可以将线...

    sr
  • Java 线程与多线程

    一个进程上可以创建多个线程,线程比进程更快的处理单元,而且所占用的资源也小,多线程的应用也是性能最高的。

    Mirror王宇阳

扫码关注云+社区

领取腾讯云代金券