zoukankan      html  css  js  c++  java
  • 继承Thread和实现Runnable的区分

    继承方式和实现接口方式  还是存在一定差异。比如售票,接口做 没有毛病,继承有点小问题 。暂时不明白 是哪里的问题=。      

    方式一:

    实现接口:new Thread(类的实例)。才可以点出开始方法。

    currentThread():获取当前线程对象

    我们利用单个Runnable实例r来创建了两个线程,那么这两个线程操作的其实都是实例r里面的属性和方法,所以能实现资源共享。

    一个比较生动的比如:

    Runnable实例r就像一个苹果,利用它创建的线程就像小虫子,咬的都是这个苹果。

    那么,从上面可以看出来属性共享的范围:

    只有用同一个Runnable实例创建的线程才有属性共享这个特性。

    通过继承Thread来实现多线程:覆盖run方法。用start()方法创建线程并执行run方法。

    Java中是单继承的,那么这么好的一个继承机会就给了它,是一个缺陷,java官方后来给出了一种实现接口的方法来实现多线程。就是实现Runnable接口 但它其实不是一个真正的线程。

    实现Runnable接口的优点:

    1.     可以继承别的类。省下一个继承的机会。

    2.     可以实现资源共享。

  • 相关阅读:
    linux开关机命令
    实现vmare虚拟机系统随主机开机自动启动
    linux常用命令
    centos7.3上用源代码安装zabbix3.2.7
    centos7用yum搭建LAMP环境
    centos7永久更改主机名
    Python基础学习-列表的常用方法
    中兴交换机配置命令
    dml并行
    11.2.0.4 aix下运行第二个节点root.sh报错处理
  • 原文地址:https://www.cnblogs.com/wlm-boke/p/8550691.html
Copyright © 2011-2022 走看看