下列关于Thread类的说法中,错误的是( )
A: Thread类不是抽象类,可以用来创建线程对象
B: Thread类是一个接口,创建线程类,需要实现其run()方法
C: Thread类是一个抽象类,必须由它的子类创建线程对象
D: 创建线程,需要创建Thread类的实例对象并调用其start()方法
A: Thread类不是抽象类,可以用来创建线程对象
B: Thread类是一个接口,创建线程类,需要实现其run()方法
C: Thread类是一个抽象类,必须由它的子类创建线程对象
D: 创建线程,需要创建Thread类的实例对象并调用其start()方法
举一反三
- 创建线程时,可以通过继承Thread类来创建线程子类对象,也可以通过实现了()接口的类对象作为Thread类的构造方法的参数,创建线程类对象。
- 关于线程的创建过程,下面四种说法正确的有哪些?(多选) A: 定义Thread类的子类,重写Thread类的run()方法,创建该子类的实例对象,调用对象的start()方法 B: 定义Thread类的子类,重写Thread类的run()方法,创建该子类的实例对象,调用对象的run()方法 C: 定义一个实现Runnable接口的类并实现run()方法,创建该类实例对,将其作为参数传递给Thread类的构造方法来创建Thread对象,调用Thread对象的start()方法 D: 定义一个实现Runnable接口的类并实现run()方法,创建该类对象,然后调用run()方法
- 调用 Thread类的run()方法创建线程对象
- 不论是通过Thread类创建线程对象,还是通过实现Runnable接口,创建线程对象,都要完成 方法的编码
- Thread类和Runnable接口中共有的方法是____,只有Thread类中有而Runnable接口中没有的方法是____,因此通过实现Runnable接口创建的线程类要想启动线程,必须在程序中创建____类的对象。