美文网首页
实现Runnable接口创建多线程

实现Runnable接口创建多线程

作者: 鹤子青云上 | 来源:发表于2022-03-18 18:10 被阅读0次

    之前,我们讲到了Thread类,通过继承Thread类实现可以实现多线程,但是这种方式有一定的局限性。因为Java只支持单继承,一个类一旦继承了某个父类就无法再继承Thread类,例如学生类Student继承了Person类,就无法通过继承Thread类创建线程。

      为了克服这种弊端,Thread类提供了另外一个构造方法Thread(Runnable target),其中Runnable是一个接口,它只有一个run()方法。当通过Thread(Runnable target)构造方法创建线程对象时,只需要为该方法传递一行代码,而不需要调用Thread类中的run()方法。

      下面通过一个案例来演示如何通过实现Runnable接口的方式来创建多线程,代码如下文件8-3所示。

      文件8-3的运行结果如图8-6所示。

    文件8-3中,第11~17行代码定义的MyThread类实现了Runnable接口,并在第12~16行代码中重写了Runnable接口中的run()方法;第4行代码中通过Thread类的构造方法将MyThread类的实例对象作为参数转入,第5行代码中使用start()方法开启MyThread线程,最后在第6~8行代码中定义了一个while死循环。从图8-6的运行结果可以看出,main()方法和run()方法中的打印语句都执行了,说明文件8-3实现了多线程。

      图8-6 文件8-3的运行结果

    相关文章

      网友评论

          本文标题:实现Runnable接口创建多线程

          本文链接:https://www.haomeiwen.com/subject/oucwdrtx.html