• 技术文章 >Java >java教程

    基于java学习中多线程的实现方法

    高洛峰高洛峰2017-03-19 11:23:52原创727
    这篇文章介绍基于java学习中多线程的实现方法

    1 继承Thread类

    继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过Thread类的start()实例方法。start()方法是一个native方法,它将启动一个新线程,并执行run()方法。这种方式实现多线程很简单,通过自己的类直接extend Thread,并复写run()方法,就可以启动新线程并执行自己定义的run()方法。

    public class MyThread extends Thread {  
      public void run() {  
       System.out.println("MyThread.run()");  
      }  
    } 
     //启动线程
    MyThread myThread1 = new MyThread();  
    MyThread myThread2 = new MyThread();  
    myThread1.start();  
    myThread2.start();

    2 实现Runnable接口

    如果一个类继承另一个类,就无法继承Thread类(java中不支持多继承),这样就要实现Runnable接口,在实现类中重写run()方法,在main方法中实现多线程:实例化一个实现类对象,并初始化Thread类的对象,把实现类传入到Thread的对象里。事实上,当传入一个Runnable target参数给Thread后,Thread的run()方法就会调用target.run()。

    //实现Runnable接口
    public class MyThread extends OtherClass implements Runnable {  
      public void run() {  
       System.out.println("MyThread.run()");  
      }  
    }  
    //复写run()方法
    public void run() {  
      if (target != null) {  
       target.run();  
      }  
    } 
    //实例化对象
    MyThread myThread = new MyThread();  
    Thread thread = new Thread(myThread);  
    thread.start();

    3 使用ExecutorService、Callable、Future实现有返回结果的多线程

    该部分内容还未学到占时不作记录,以后补充

    以上就是基于java学习中多线程的实现方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:java 多线程
    上一篇:Java类的静态成员、静态代码块、普通成员、普通代码块、构造方法初始化执行的顺序详细说明 下一篇:Java科学计数法详细说明
    PHP编程就业班

    相关文章推荐

    • JAVA学习IO操作之字节流和字符流(总结分享)• 完全掌握JAVA流程控制• Java学习总结之数组(整理分享)• Java工厂方法模式详解• 详细整理java枚举的使用总结

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网