java程序设计试题库 下载本文

《Java语言程序设计基础教程》

41

}

}

add(tf); add(btn);

setBounds(400, 300, 400, 300); //设置窗体的位置和尺寸 setVisible(true);

4、编写一个主类为TestKey的程序实现如下功能:在窗口画出一个红色圆点,并可以通过键盘方向键(左右上下)控制红色圆点圆点进行移动。涉及到KeyEvent对应监听器接口的实现,paint()方法的重写,内部类等知识点。

import java.awt.* ; import java.awt.event.*; import java.util.*;

public class TestKey { }

class KeyFrame extends Frame{

int framLocaX= 200 ; int framLocaY= 200 ;

//Point p = new Point(framLocaX+100, framLocaY+100) ; Point p = new Point(100, 100) ;

public static void main(String[] args){ }

new KeyFrame().launchFrame() ;

41

42

} }

42

《Java语言程序设计基础教程》

public void launchFrame(){ }

public void paint(Graphics g){ }

class MyKeyMonitor extends KeyAdapter{

public void keyPressed(KeyEvent e){ }

int keyCode = e.getKeyCode() ; /*if(keyCode ==KeyEvent.VK_UP){

System.out.println(\

}*/

switch (keyCode){ case KeyEvent.VK_UP: }

KeyFrame f= (KeyFrame)e.getSource() ; f.repaint() ;

p.y = p.y-10 ; break;

p.y = p.y+10 ; break;

p.x = p.x+10 ; break;

p.x = p.x-10 ; break;

g.setColor(Color.BLUE); g.fillOval(p.x, p.y, 10, 10); setSize(400,400) ;

setLocation(framLocaX,framLocaY); addKeyListener(new MyKeyMonitor()) ; setVisible(true);

case KeyEvent.VK_DOWN:

case KeyEvent.VK_RIGHT:

case KeyEvent.VK_LEFT:

《Java语言程序设计基础教程》

43

第7章 多线程

7.1单项选择题

1、 Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?( )

A、安全性 B、多线程 C、跨平台 D、可移植 解答:B

2、 Runnable接口中的抽象方法是( )。

A、start B、stop C、yield D、run

解答:D

3、 有以下程序段 (很难)

class MyThread extends Thread {

public static void main(String args[]) {

MyThread t = new MyThread(); MyThread s = new MyThread(); t.start();

System.out.print(\ s.start();

System.out.print(\ }

public void run() {

System.out.print(\ } }

则下面正确的选项是( ) A、编译失败

B、程序运行结果为:one.Threadtwo.Thread C、程序运行结果是:one.two.ThreaThread D、程序运行结果不确定 解答:D

5、 作为类中新线程的开始点,线程的执行是从下面哪个方法开始的。( )

43

44

《Java语言程序设计基础教程》

A、public void start() B、public void run() C、public void int()

D、public static void main(String args[]) 解答:A

6、Java中用于给对象加“互斥锁”标记的关键字是。( )

A、synchronized B、serialize C、transient D、static 解答:A

7.以下哪个方法用于定义线程的执行体? ( C ) A、 start() B、init() C、run() D、synchronized()

8.以下哪个关键字可以用来为对象加互斥锁?( D ) A、transient B、static C、 serialize D、synchronized

7.2填空题

7.3简答题

1、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?

多线程有两种实现方法,分别是继承Thread类与实现Runnable接口。用Thread类的子类创建线程对象,也就是从Thread类继承。实现Runnable接口,用Thread类直接创建线程对象。

同步的实现方面有两种,分别是synchronized,wait与notify。

2、 创建一个新线程的方法,可以使用下面哪2种 ( )

A、继承java.lang.Thread类,并且重载run方法。 B、继承java.lang.Runnable类,并且重载start方法。 C、实现java.lang.thread类,实现run方法。

44