A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘永贵 中级黑马   /  2014-3-17 18:24  /  2112 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

编译并运行以下代码的结果是?(  )
import java.io.*;

public class MyThread extends Thread{
        public static void main(String args[]){
                MyThread mt = new MyThread();
                mt.start();
        }

        public void run(){
                try {
                             sleep(200);
                             System.out.println
("Printing from thread run() method");
                } catch ( IOException e) {
                       
                }
        }
}
A. 编译错误.
B. 输出: Printing from thread run() method.
C. 线程先停止运行,在 200毫秒后恢复,并输出 :
Printing from thread run() method.
D. 线程先停止运行,在恰好200毫秒后恢复。

12 个回复

倒序浏览
选 C , sleep(200); //sleep()方法让线程处于休眠状态,不会释放锁,把时间片让给其他线程,等休眠时间结束,再继续执行。
回复 使用道具 举报
编译失败啊

这个肯定不是IOException啊

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报 1 0
:dizzy: 线程异常 怎么还出来个I/O 异常
回复 使用道具 举报
我也搞不懂,于是就运行了一下。果然是编译错误。

QQ图片20140317200546.jpg (106.5 KB, 下载次数: 39)

QQ图片20140317200546.jpg

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
sleep()方法是静态方法属于Thread类,貌似需要Thread类直接调用,不然编译会出错吧,选A
回复 使用道具 举报
果断就是编译出错!
回复 使用道具 举报
选A
因为public static void sleep(long millis)
                  throws InterruptedException
抛出的时 InterruptedException 异常,而你catch中捕捉的是IOException
所以会编译出错
回复 使用道具 举报
戒爱 中级黑马 2014-3-18 20:24:59
9#
李猛 发表于 2014-3-17 20:19
sleep()方法是静态方法属于Thread类,貌似需要Thread类直接调用,不然编译会出错吧,选A ...

MyThread 继承了 Thread 也就继承了Thread的方法,包括静态方法
回复 使用道具 举报
戒爱 发表于 2014-3-18 20:24
MyThread 继承了 Thread 也就继承了Thread的方法,包括静态方法

嗯,静态方法可以继承,但不能复写
回复 使用道具 举报 1 0
戒爱 发表于 2014-3-18 20:24
MyThread 继承了 Thread 也就继承了Thread的方法,包括静态方法

这题会选择A?线程不是睡眠200毫秒后,才会打印下面那句话吗?
回复 使用道具 举报
依旧 发表于 2014-3-18 22:44
这题会选择A?线程不是睡眠200毫秒后,才会打印下面那句话吗?

编译不通过,异常处理不匹配
回复 使用道具 举报
Sleep方法抛出的是InterruptedException异常啊,怎么成IOException了呢???
所以选A,

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马