Thread actressThread=new Thread(new Actress(),"MsRunnable")为什么创建Actress()实例用要用Thread的方法

来源:2-3 Java线程-隋唐演义实战开发---演员简介

qq_为了美好的明天

2016-09-06 23:27

Thread actressThread=new Thread(new Actress(),"MsRunnable")为什么创建Actress()实例用要用Thread的方法

写回答 关注

2回答

  • 张探长
    2016-09-07 11:21:31
    已采纳

    查看api可知道 Runnable 接口,只提供了run()方法。所以只实现了 Runnable 接口的类并不能启动线程。当你再查看Thread的api时,有多个重载的构造函数比如这个: 

    public Thread(Runnable target, String name);

    启动线程只能用Thread里面的start() 方法。

    Thread actressThread = new Thread(new Actress(),"MsRunnable");
    // 可写成
    Actress actress = new Actress(); 
    Thread actressThread = new Thread(actress, "MsRunnable");
    // 此时 actreeThread 调用的 start() 方法时,也就调用了 actress 中的 run() 方法. 
    actressThread.start();


    qq_为了美...

    谢谢谢谢

    2016-09-07 16:43:27

    共 1 条回复 >

  • 通信IT狗
    2016-09-26 16:25:05

    我自己理解的创建线程的本质还是通过Thread类,只有这样才能创建的对象对不?

    正如老师说的再次创建一个Actress类也是可以的

    qq_为了美...

    谢谢谢谢

    2016-09-26 19:33:38

    共 1 条回复 >

深入浅出Java多线程

带你一起深入浅出多线程,掌握基础,展望进阶路线

186088 学习 · 464 问题

查看课程

相似问题