1.运行下列程序,会产生什么结果?
public class X extends Thread implements Runable
{
public void run()
{
System.out.println(" this is run()");
}
public static void main(String args[])
{
Thread t=new Thread(new X());
t.start();
}
}
1第一行会产生编译错误
2第六行会产生编译错误
3第六行会产生运行错误
4程序会运行和启动
2. 下列哪个方法可用于创建一个可运行的类?
1public class X implements Runnable{ public void run(){ ......} }
2public class X implements Thread{ public void run(){ ......} }
3public class X implements Thread{ public int run(){ ......} }
4public class X implements Runable{ protected void run(){ ......} }
5public class X extends Thread{ public void run(){ ......} }
3. 下列哪些情况可以终止当前线程的运行?
1抛出一个例外时
2当该线程调用sleep()方法时
3当创建一个新线程时
4当一个优先级高的线程进入就绪状态时
4.下列说法正确的是:
1java语言里的线程是没有优先级的
2String类在java.lang包中
3java语言支持类的序列化
4能序列化的类必须实现java.io.Serializable接口
5.有关线程的哪些叙述是对的?
1一旦一个线程被创建,它就立即开始运行。
2使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行。
3当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。
4一个线程可能因为不同的原因停止(cease)并进入就绪状态。
6.方法resume()负责恢复哪些线程的执行
1通过调用stop()方法而停止的线程
2通过调用sleep()方法而停止运行的线程
3通过调用wait()方法而停止运行的线程
4通过调用suspend()方法而停止运行的线程
7.以下哪个不是线程的组成部分
1处理器
2代码
3数据
4显示器
8.关于Runnable接口,正确的说法是
1实现了Runnable接口就可以用start方法启动
2Runable接口提供了通过线程执行程序的最基本的接口
3Thread类实现了Runnable接口
4Runnable只定义了一个run方法
9.下面说法正确的是
1Java中线程是抢占式的
2Java中线程是分时的
3Java中的线程可以共享数据
4Java中的线程可以共享代码
10.下面属于Java线程同步方法的方法有
1join
2run
3wait
4destroy
11.下面程序的运行结果是什么?
class Test implements Runnable{
DotThread t;
public static void main(String [] args){
Test d=new Test();
d.t=new DotThread();
}
public void init(){
t.start();
t=new DashThread().start();
}
}
class DotThread extends Thread{
public void run(){
for(int index=0;index<100;index++)
System.out.println(“.”);
}
}
class DashThread extends Thread{
public void run(){
for(int index=0;index<100;index++)
System.out.println(“-”);
}
}
1nothing
2100 dots(.)
3200 dots(.)
4100 dashes(-)
5100 dots(.) and 100 dashes(-)
12.如果一个线程调用了wait()方法,下列哪些方法可以使这个线程继续运行?
1join()
2resume()
3notify()
4notifyAll()
5high priority thread is ready
13.下列那个方法是用来定义具体的线程执行功能的?
1start()
2init()
3run()
4main()
5synchronized()
14.下列哪些方法可以用来定义一个新的线程类?
1implement the Runnable interface
2add a run() method in the class
3create an instance of Thread
4extend the Thread class
15.一个方法在声明为同步方法时,只需要在方法名前面加上什么修饰符?
1synchronized
2abstract
3final
4static
5public
16.下列哪种情况会导致当前线程被停止?
1中断异常
2线程调用了sleep()方法
3创建一个新的线程
4有更高优先级的线程准备运行
5调用输入流的read()方法
17.给出程序
class Test{
public static void main(String[] args){
Thread t=new Thread(new RunHandler());
t.start();
}
}
下列哪些说法可以使得上面程序得以运行?
1RunHandler类必须实现java.lang.Runnable接口
2RunHandler类必须继承Thread类
3RunHandler类必须提供一个run()方法,并且该方法被声明为public,返回值为viod
4RunHandler类必须提供一个init()方法
18.下面程序在编译和运行时,将发生什么?
class Test implements Runnable{
int I=0;
public int run(){
while(true){
i++;
System.out.println(“i=”+i);
}
return 1;
}
}
1程序能够编译通过,run方法将打印出增加的i的值
2程序能够编译通过,并通过调用start()方法打印出增加的i的值
3程序在编译时将产生错误
4编译将产生错误,因为while不能接收一个为true的参数
19.下面程序编译和运行时,将发生什么?
public class Test extends Thread{
public static void main(String args[]){
Test b=new Test();
b.run();
}
public void start(){
for(int i=0;i<10;i++){
System.out.println(“Value of i=”+i);
}
}
}
1一个编译时的错误表明没有为这个线程类定义run方法
2一个运行时的错误表名没有为这个线程类定义run方法
3编译通过并且在运行时输入值0-9
4编译通过但是在运行时没有任何输出
20.下面说法哪一个可以停止线程的运行?
1程序通过调用it(0)停止
2有较高优先级的线程出现
3调用了stop()方法
4调用了Thread类的halt方法
21.下面哪些是Thread类的方法?
1yield()
2sleep(long msec)
3go()
4stop()
22.假设有20个具有相同优先级的线程在等待池中,如果能够唤醒等待池中的第15个线程?
1调用resume()方法
2调用interrupt()方法
3调用call()方法
4通过在线程实例对象中调用notify(15)方法
5以上说法都不对
23.下面说法哪些是正确的?
1toString()方法是在Object类中定义的。
2toString()方法是在Class类中定义的。
3wait(),notify(),notifyAll()方法是在Object类中定义的,用来线程之间的通信。
4toString()方法提供了对象的字符串表示
24.下面的程序代码执行情况是什么?
public class Test implements Runnable{
public void run(String s){
System.out.println(“Executing Runnable Interface Thread”);
}
public static void main(String args[]){
Test rt=new Test();
Thread t=new Thread(rt);
t.start();
}
}
1编译错误
2运行错误
3编译通过,在屏幕上打印出“Executing Runnable Interface Thread”
4编译通过,但不在屏幕上打印出任何信息
25.下面说法哪些是正确的?
1Thread类中定义的start()方法是用来启动线程的。
2write的返回值线程执行体run()方法运行结束,意味着线程结束。
3被撤销的线程能被重新启动。
4Thread类中的stop()方法可以强制当前线程停止执行。
26.下面程序在编译和运行时将发生什么?
1: public class Test extends Thread
2: {
3: public void run()
4: {
5: System.out.println(“Befor start method”);
6: this.stop();
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论