admin 管理员组

文章数量: 887021


2023年12月19日发(作者:二分法c语言)

一、

选择题

1.每个使用AWT组件的程序必须有一个( D )

A)按钮 B)标签

C)菜单 D)容器

2.和AWT相比,Swing有很多特点。下列不是Swing的特点? ( B )

A)100%纯Java实现 B)依赖平台

C)采用可插入的外观感觉 D)采用“模型—视图—控制器”体系结构

3.以下声明,错误的是 ( )

A)int a[] = new int[10]

B)int a[10]

C)String[] a;a = int [10]

D)String a[] = {“a” ,”b”,”c”,”hello”}

4.编译和运行下面的代码时将会发生什么情况:(B )

class Test {

static int myArg = 1;

public static void main(String[] args) {

int myArg;

n(); }}

A)输出结果为0;

B) 输出结果为1;

C) 不能编译成功,因为局部变量的名字和静态变量的名字相同

D)不能编译成功,因为局部变量在使用前必须初始化。

5.下列说法中错误的是( )

A)在Windows系统下,Frame窗口是有标题,边框的

B)Frame的对象实例化后,没有大小,但是可以看到的

C)通过调用Frame的setSize()方法来设定窗口的大小

D)通过调用Frame的setVisible(true)方法来设置窗口为可见

事件分为低级事件和高级事件,下列属于低级事件的是( D )

A)鼠标的进入 B)拖放

C)窗口关闭 D)以上都是

7.布局管理器使容器中各个构件呈网格布局,平均占据容器空间。 ( C

A)FlowLayout B)BorderLayout

C)GridLayout D)CardLayout

的编写时,至少需要实现的是( )

A)init() B)start()

C)paint() D)以上中的任意一个

9.下列哪项不是子类继承方法的规则:( )

A)能够继承那些声明为public和protected的成员方法。

B)能够继承同一包中的默认修饰符的成员方法。

C)不能继承那些声明为private的成员方法。

D)继承超类的构造方法。

10.下列说法中,错误的一项是( )

A)线程是程序中的一个执行流

B)多线程是程序中的多个执行流

)

C)线程是进程的一次动态执行过程

D)进程是程序的一次动态执行过程

11.下列说法中错误的一项是( )

A)通常编写GUI程序时,使用的是Component类的子类

B)Component类封装了构件通用的方法和属性

C)类Component是许多常用构件类的父类,但是Container不是其子类

D)许多常用的构件类都继承了Component的成员方法和变量

12.请问所有的例外类皆继承哪一个类?( )

A)ion B) ble

C) ion D)

13.已创建好一个Frame类的对象myfrm,要为其设置标题,需要调用方法?( B )

A)getTitle() B)setTitle() C)getState() D)setState()

14.在Applet生命周期中,下面哪个方法是在装载Applet时被调用?( )

A)destroy() B)init() C)start() D)stop()

包提供了基本的java程序的GUI设计工具,包含构件、容器和( )

A)布局管理器 B)数据传送器

C)图形和图象工具 D)用户界面构件

16.以下TextArea对象不能注册下列哪些接口? ( )

A )TextListener B) ActionListener

C

)MouseMotionListener 和MouseListener D) ComponentListener

17.下面关于Applet的说法正确的是( )

A)Applet也需要main方法

B)Applet必须继承自java.

C)Applet能访问本地文件

D)Applet程序不需要编译

18.下列说法中错误的一项是( )

A)一个线程是一个Thread类的实例

B)线程从传递给线程的Runnable实例的run()方法开始执行

C)线程操作的数据来自Runnable实例

D)新建的线程调用start()方法就能立即进入运行状态

19.下列说法正确的是 ( )

A)线程的终止一般可通过两种方法实现:自然撤消(线程执行完)或是被停止(调用stop()方法)

B)一个暂时终止运行的线程(例如,睡眠或阻塞)在排除了终止原因后直接运行

C)一个线程因为输入输出操作被阻塞时,执行resume()方法可以使其恢复就绪状态

D)调用了suspend()方法,也可以使线程进入死亡状态

20.下列哪一个不属于Java线程模型的组成部分?( )

A)虚拟的CPU

B)虚拟CPU执行的代码

C)代码所操作的数据

D)执行流

Group类的作用为( )

A)使任何类都可以为线程提供线程体

B)定义了线程同步与交互的方法

C)提供了线程组或组中的每个线程进行操作的方法

D)以上都不是

22.当输入一个字节流时,要 ( )

A)实现DataInput接口B)实现ObjectInput接口

C)Serializable接口D)继承Reader抽象类

23.提供处理文件I/O流的类的包是( )

A)

B)

C)

D)

24.过滤字节输出流都是抽象类的子类。( )

A)InputStream

B)OutPutStream

C)FilterInputStream

D)FilterOutputStream

25.非字符输入流都是抽象类的子类。( )

A)InputStream

B)OutputStream

C)FilterInputStream

D)FilterOutputStream

26.若文件是RandomAccessFile的实例file,并且其基本文件长度大于0,则下面的语句实现的功能是( )

(()-1);

A)将文件指针指向文件的第一个字符后面

B)将文件指针指向文件的最后一个字符前面

C)将文件指针指向文件的最后一个字符后面

D)会导致seek()方法抛出一个IOException

27.关于字节I/O流,下列叙述不正确的是( )

A)字节数据来自于二进制文件

B)DataOutStream的方法flush()的功能是清空输出流,并把缓冲全部内容写入输出流中

C)字节输入流首先要实现DataInput接口

D)所有的字节输出流都继承于Writer类

28.文件类是包中的( )

A)文件流类

B)字节流类

C)对象流类

D)非流类

Buffer类的引入,主要是为了( )

A)提高数据传送的效率

B)精简数据传送的操作

C)进行数据替换

D)数据传送安全

30.下列说法中错误的一项是( )

A)通常编写GUI程序时,使用的是Component类的子类

B)Component类封装了构件通用的方法和属性

C)类Component是许多常用构件类的父类,但是Container不是其子类

D)许多常用的构件类都继承了Component的成员方法和变量

31.下列说法错误的是( )

A)与Swing组件库相比,AWT组件非常依赖底层平台

B)Component类是所有AWT组件的根

C)Swing组件可以完全取代AWT组件

32.每个使用Swing组件的程序必须有一个( )

A)按钮B)标签C)菜单D)容器

33.和AWT相比,Swing有很多特点。下列不是Swing的特点?( )

A)100%纯Java实现

B)依赖平台

C)采用可插入的外观感觉

D)采用“模型—视图—控制器”体系结构

34.下列说法中,正确的一项是( )

A)AWT的高级事件依赖于触发此类事件的类,可以和特定的动作相关联

B)AWT的高级事件依赖于触发此类事件的类,可以不和特定的动作相关联

C)AWT的低级事件是在构件或者容器上发生的事件

D)AWT的低级事件是基于语义的事件,不一定和特定的动作相关联

35.下列说法中错误的一项是( )

A)使用继承Thread类创建线程,可以直接调用线程的方法

B)通过实现Runnable接口创建线程,体现了面向对象的思想

C)Thread类从面向对象的角度看,是虚拟CPU的封装

D)通过实现Runnable接口创建线程,会影响Thread类的体系

36.下面哪个不是java的关键字( )

A) null B)new

C)sizeof D) transient

37.下列说法中错误的一项是( )

A)一个线程是一个Thread类的实例

B)线程从传递给线程的Runnable实例的run()方法开始执行

C)线程操作的数据来自Runnable实例

D)新建的线程调用start()方法就能立即进入运行状态

和Applet的默认的布局管理器是( )

A)CardLayout B)BorderLayout C)FlowLayout D)GridLayout

39.用AWT组件实现单选按钮功能,需要使用组件?( )

A)Checkbox B)CheckboxGroup C)Checkbox和CheckboxGroup D)Choice

可以做下列哪些操作( )

A)调用用户计算机上的系统去执行其他的应用程序

B)访问用户的文件系统

C)装入用户计算机上以其他程序语言所写的应用程序或函数库

D)读取客户端部分系统变量

41.下列复选框构造方法,错误的是( )

A)add(new Checkbox("one",false));

B)add(new Checkbox("one",null,true));

C)add(new Checkbox("two"));

D)add(new Checkbox("one",true));

42.下列不属于Applet编写步骤的是( )

A)引入需要的类和包 B)定义一个Applet类的子类

C)实现Applet类的某些方法 D)重写Applet的paint()方法

43.下列包封装抽象窗口工具包,提供管理用户图形界面功能。( )

A)ty.* B).* C).* D).*

44.实现下列哪个接口可以对MenuItem进行监听和处理?( )

A)ActionListener B)FocusListener

C)MouseMotionListener D)WindowListener

45.在Applet程序占用的屏幕上显示文字、图形等信息,应使用的方法是( )

A)paint() B)init() C)start() D)destroy()

46.下列哪项不是子类继承方法的规则:( )

A)能够继承那些声明为public和protected的成员方法。

B)能够继承同一包中的默认修饰符的成员方法。

C)不能继承那些声明为private的成员方法。

D)继承超类的构造方法。

47.下列关于小应用程序说法错误的是( )

A)用户所编写的小应用程序的类必须为public

B)用户所编写的小应用程序必须为的子类

C)用户所编写的小应用程序的类名称可以与它所在的文件名不相同

D)用户所编写的小应用程序可以不在浏览器上运行

48.下列是创建一个标识有“关闭”按钮的语句。 ( )

A)TextField b=new TextField("关闭"); B)TexArea b=new TexArea("关闭");

C)Button b=new Button("关闭"); D)Checkbox b=new Checkbox("关闭");

49.浏览器在关闭时,将被调用的Applet方法是( )

A)只有stop()方法 B)只有destroy()方法

C)先调用 stop(),然后再调用destroy() D)不调用Applet的任何方法

50对于构造函数,下列叙述不正确的是( )。

A)构造函数也允许重载。

B)子类无条件地继承父类的无参构造函数。

C)子类不允许调用父类的构造函数。

D)在同一个类中定义的重载构造函数可以相互调用。

51下列事件监听器中,无法对TextField对象进行事件监听和处理的是( )

A)ActionListener B)FocusListener

C)MouseMotionListener D)ChangeListener

52请问所有的例外类皆继承哪一个类? ( )

A) ion B)ble

C)ion D)

53.线程同步中,对象加锁应该注意( )

A)返还对象的锁

B)用synchronized保护的共享数据必须是私有的

C)Java中对象加锁具有可重用性

D)以上都对

54.阅读下列程序: ( )

class ThreadTest extends Thread{

public static void main(String[] args) {

Thread t=new Thread(this);

();}

public void run() {

("A thread test.");}}

对该程序而言,正确结论是( )

A)该程序能够通过编译并打印输出“A thread test.”

B)该程序能够通过编译,但运行时将不调用ThreadTest类中的run()方法,因此不产生任何输出

C)该程序存在编译错误,因为在main()方法中不能使用this指针

D)上述选项都不正确

类的方法中,toString()方法的作用是( )

A)只返回线程的名称

B)返回当前线程所属的线程组的名称

C)返回当前线程对象

D)返回线程的字符串信息

56.每个使用AWT组件的程序必须有一个( )

A)按钮 B)标签

C)菜单 D)容器

57 线程生命周期中正确的状态是( )

A)新建状态 运行状态 和终止状态

B)新建状态 运行状态 阻塞状态和终止状态

C)新建状态 就绪状态 运行状态 阻塞状态和终止状态

D)新建状态 可运行状态 运行状态 恢复状态和终止状态

二、填空题

()方法带有一个参数,它是.______________类的一个实例。这个参数总是建立该Applet的panel的图形上下文。能用这个上下文在的Applet中绘图或写入文本。

的图形界面技术经历了两个发展阶段,分别通过提供AWT开发包和___________开发包来体现。

3.所有用户界面类的父类是包中的__________。

Applet应用程序的编写和执行共分4步进行:编写源代码、编写HTML文件调用该小程序、__________________、解释执行。

treamReader类是以字节输入流作为数据源的____________________。

6.以下是一个对数据文件进行缓冲输入操作的语句,在语句的下划线处,请填上适当的内容:

DataInputStream din=new DataInputStream(new_________________________

(new FileInputStream("")));

7.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为_______________________________。

8.如果一个Java源程序文件中定义有4个类,则使用Sun公司的JAK编译器javac编译该源程序文件,将产生4个文件名与类名相同而扩展名为______________的字节码文件。

9.抛出异常的程序代码可以是______________,或者是JDK中的某个类,还可以是JVN。

10任何一个java程序都默认引入了一个包,这个包的名字叫__________________ 。

11.抽象窗口工具包________提供用于所有Java applets及应用程序中的基本GUI组件。

GUI使用两种类型的类,即GUI类和_____________支持类。

13.布局管理器中将构件从上到下、从左到右进行的排列的布局管理器是___________。

14.在AWT包中,创建一个具有10行、45列的多行文本区域对象ta的语句为____________________________。

中流的实现是在____________的类层次结构内部定义的。

16.串行化对象的方法有两种:把对象写到对象流和_________________________。

17.当需要提高读入字符串的效率,且要对字符串进行添加、删除、插入等操作时,最好使用___________________类。

18 在包中有某个类同时实现了DataInput接口和DataOutput接口,这个类是________________________________。

中,新建的线程调用start()方法,如(),将使线程的状态从New(新建状态)转换为___________________。

20. Java语言中,有一个类是所有类或接口的父类,这个类的名称是________________。

21.布局管理器中将构件从上到下、从左到右进行的排列的布局管理器是【11】。

22.在AWT包中,创建一个具有10行、45列的多行文本区域对象ta的语句为【14】。

23.布局管理器中将构件从上到下、从左到右进行的排列的布局管理器是【11】。

中流的实现是在【9】的类层次结构内部定义的。

25.字符常量是用单号括起来的一个字符,用双撇号括起来的是【7】。

26.下面的语句是声明一个常量并赋值:

属性是专门定义【8】变量的保留字。

28.在面向对象的程序设计中,类描述的是具有相似性质的一组【6】。

通过过滤流对I/O访问提供【12】机制。

30.根据程序的构成和运行环境的不同,Java源程序分为两类,即【14】程序和JaveApplet程序。

三、 判断题程序填空:

1. 抽象类必须包含抽象方法。( )

2. 接口可以有构造方法。 ( )

3. 静态方法不可以访问固有的变量this .( )

4. 非运行时异常必须被处理。( )

5. 一个组件可以使用多个事件监听器。()

6. 接口中定义的变量都是static 和 final.。()

7. Java把数组当作对象看待( )

8. 构造方法可以有void 返回类型。()

9. 使用UDP协议传输数据时,每个被传输的数据报的长度没有限制。( )

10. 静态方法能直接访问类中定义的实例变量。( )

11 抽象类必须包含抽象方法。( )

12. 接口可以有构造方法。 ( )

13. 静态方法不可以访问固有的变量this .( )

14. 非运行时异常必须被处理。( )

15. 一个组件可以使用多个事件监听器。( )

16. 接口中定义的变量都是static 和 final.。( )

17. Java把数组当作对象看待( )

18. 构造方法可以有void 返回类型。( )

19. 使用UDP协议传输数据时,每个被传输的数据报的长度没有限制。( )

20. 静态方法能直接访问类中定义的实例变量。( )

21.Java Application程序中,必有一个主方法main(),该方法有没有参数都可以( )

22.java命令不区分大小写,而javac命令区分大小写。 ( )

23.Java语言中,构造方法是不可以继承的。 ( )

24.使用构造方法只能给实例成员变量赋初值。 (

25.所谓线程同步就是若干个线程都需要使用同一个synchronized修饰的方法。 (

四、 读程序,用图形描述程序的运行界面,并说明它能接受的事件及效

1

import .*;

import .*;

public class TestActionEvent2 {

public static void main(String args[]) {

Frame f = new Frame("Test");

Button b1 = new Button("Start");

Button b2 = new Button("Stop");

Monitor bh = new Monitor();

ionListener(bh); ionListener(bh);

ionCommand("game over");

(b1,"North"); (b2,"Center");

(); ible(true); }}

class Monitor2 implements ActionListener {

public void actionPerformed(ActionEvent e) {

n("a button has been pressed, the relative info is: " + ionCommand()); }}

2

import ;

import .*;

import .*;

public class TextFieldExample extends Applet implements ActionListener{

Label outputLbl = new Label(" ");

TextField inputTfd = new TextField(10);

Button copyBtn = new Button("复制");

public void init(){

t(" ");

t(" ");

add(inputTfd);

add(copyBtn);

add(outputLbl);

ionListener(this);}

public void actionPerformed(ActionEvent ae){

if(rce() == copyBtn){

t(t());}}}

3、import .*;

import .*;

public class TestActionEvent {

public static void main(String args[]) {

Frame f = new Frame("Test");

Button b = new Button("Press Me!");

Monitor bh = new Monitor();

ionListener(bh);

(b,);

();

ible(true); }}

class Monitor implements ActionListener {

public void actionPerformed(ActionEvent e) {

n("a button has been pressed"); }}

4.import .*;

import .*;

public class TestActionEvent2 {

public static void main(String args[]) {

Frame f = new Frame("Test");

Button b1 = new Button("Start");

Button b2 = new Button("Stop");

Monitor bh = new Monitor();

ionListener(bh); ionListener(bh);

ionCommand("game over");

(b1,"North"); (b2,"Center");

(); ible(true);}}

class Monitor2 implements ActionListener {

public void actionPerformed(ActionEvent e) {

n("a button has been pressed, the

ionCommand()); }}5 class Exercises6_3 {

class Dog {

private String name;

private int age;

public int step;

Dog(String s, int a) {

name = s;

age = a;

step = 0;

}

public void run(Dog fast) {

++;

relative info is: " +

}

}

}

public static void main(String args[]) {

Exercises6_3 a = new Exercises6_3();

Dog d = Dog("Tom", 3);

= 29;

(d);

n(" " + );

}

运行结果是:( 30 )

6

public class Exercises5_1 {

String str = new String("Hi !");

char[] ch = { 'L', 'i', 'k', 'e' };

public static void main(String args[]) {

Exercises5_1 ex = new Exercises5_1();

(, );

( + " ");

();

}

public void change(String str, char ch[]) {

str = "How are you";

ch[1] = 'u';

}

}

运行结果是:( Hi!Luke

7 public class Exercises5_2 {

public static void main(String[] args) {

int n = 1, m, j, i;

for (i = 3; i <= 30; i += 2) {

m = (int) ((double) i);

for (j = 2; j <= m; j++)

if ((i % j) == 0)

break;

if (j >= m + 1) {

(i + " ");

if (n % 5 == 0)

("n");

n++;

}

}

}3 5 7 11 13

17 19 23 29

五、 写程序

1、写程序,实现如下图形用户界面

2.求100~200之间的所有素数,要求用Java面向对象方法。

输出1-100之间的所有素数

public class ForPrime {

public static void main(String[] args) {

for (int i = 2; i < 100; i++) {

if (isPrime((long) i)) {

n(" isPrime = " + i);

}

}

}

static boolean isPrime(long num) {

double intSqrtOfNum = ((double) num);

int i = 0;

for (i = 2; i < intSqrtOfNum; i++) {

if (num % i == 0)

break;

}

if (i > intSqrtOfNum) {

return true;

}

return false;

}

}

写程序,实现如下图形用户界面

4. 求100~200之间的所有素数,要求用Java面向对象方法。

5.编程:将三个已知的整型数按降序排序输出。(5分)

6.使用基于字节的文件输入/输出流,将一个文件复制到另一个文件中。(5分)

7.求100-200之间的所有素数。(10分)

五、 论述题

1 说一说面象对象的程序设计思想与面象过程的程序设计思想有何不同?

2 简单描述线程创建的过程。

3.什么是对象?什么是类?二者有何关系?

4.什么是接口?如何定义接口?接口与类有何区别?

5.Java中成员变量定义的一般格式是什么?成员变量有哪些修饰符?

6.什么是异常?简述Java的异常处理机制。


本文标签: 方法 线程 程序 状态 对象