start()不能输出

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

qq_阳光下的海风_0

2016-06-02 21:23

我运行之后啥都没输出,可是既没有报错,也没有异常

请问一般是哪里出问题了?

(我在main函数里添加了一个输出语句是可以执行的)

代码如下:

package actor;


public class Actor extends Thread {

public static void main(String[] args){

Thread actor=new Thread();

actor.setName("Mr.Thread");

System.out.println("s");

actor.start();

}

public void run(){

System.out.println(getName()+"是一个演员");

int  count=0;

System.out.println(getName()+"登台演出"+(++count));

System.out.println(getName()+"的演出结束");

}


}


写回答 关注

3回答

  • Mushoukai
    2016-06-02 21:53:41
    已采纳

    有输出的,输出S

    qq_阳光下...

    是的,那个语句只是做为测试用的

    2016-06-02 22:02:44

    共 1 条回复 >

  • 连宏伟HW
    2016-06-18 13:19:48

    Thread actor = new Actor();父类对象的引用指向子类对象

    qq_阳光下...

    嗯嗯,现在已经明白啦,谢谢啦

    2016-06-18 15:05:51

    共 1 条回复 >

  • Mushoukai
    2016-06-02 21:56:26

    public class actor extends Thread {

    public static void main(String[] args) {


    actor a = new actor();

    a.setName("Mr.Thread");

    System.out.println("s");

    a.start();


    }

    public void run() {

    System.out.println(getName() + "是一个演员");

    int count = 0;

    System.out.println(getName() + "登台演出" + (++count));

    System.out.println(getName() + "的演出结束");

    }


    }


    qq_阳光下...

    貌似突然反应过来了、、、、、 既然继承了Thead类就需要用自己的方法,虽然Thread里确实有start方法,但是是一个空的方法,所以什么都不输出 因此定义对象时需要用继承了Thead类的类来定义 谢啦

    2016-06-02 22:10:30

    共 1 条回复 >

深入浅出Java多线程

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

186064 学习 · 502 问题

查看课程

相似问题