2024年4月28日发(作者:)

《Java程序设计精典教程》习题答案

编著:胡伏湘,雷军环

清华大学出版社

第6章习题解答

一、 简答题

1.说明文本框和标签之间的区别?

答:文本框定义了一个单行条形文本区,可以输出任何基于文本的信息,也可以接受

用户的输入,并有事件响应。标签可以显示一行静态的文本,它只起信息说明作用,不接受

用户的输入,无事件响应。

2.试列举Java中常用的基本控制组件。如果有二到三种取值可能,采用哪种组件合

适?如果取值的可能大于5种,采用哪种组件合适?

答:基本控制组件是图形用户界面的最小单位之一,它里面不再包含其他成分。基本

控制组件的作用是完成与用户的一次交互。目前常用的基本控制组件有:

标签(Label)、文本编辑区(TextField、TextArea)、按钮(Button)、复选框(Checkbox)、

单选按钮(CheckboxGroup、Checkbox)、下拉列表(List或Choice)。

如果这两到三种取值是互斥的话,采用单选按钮表示比较合适,否则采用复选按钮表

示;如果5种以上的取值只能多选一的话,采用Choice下拉列表,否则采用List下拉列表。

3.什么是选择事件?可能产生选择事件的GUI组件有哪些?

答:选择事件是当选择项的选中状态发生变化时所引起的事件。

可能产生选择事件的GUI组件有下拉列表类(Choice)、列表类(List)复选按钮类

(CheckBox)、检测盒菜单项(CheckboxMenuItem)

4.设计一个菜单的步骤是什么?

答:设计菜单的步骤是:

用MenuBar构造函数构造菜单栏对象。

用Menu构造函数构造菜单对象。

用MenuItem构造函数构造菜单项对象。

用Menu类的add方法将菜单项加入菜单中。

用MenuBar类的add方法将菜单加菜单栏中。

用Frame类的setMenuBar方法将菜单栏加入窗口中。

5.有模式的对话框最突出的特点是什么?如果一个对话框的目的在于警告或提醒用

户(例如删除数据库记录的确认),这个对话框应该是有模式的还是无模式的?

答:有模式对话框是指打开后必须作出响应的对话框。如果一个对话框的目的在于警

告或提醒用户,应该为有模式的对话框。

6.Swing组件与AWT组件的区别是什么?

答:AWT组件是JDK1.0和1.1平台用于开发GUI的工具,尽管Java2平台仍然支持

1

AWT组件,但是,使用Swing组件来开发GUI已经成为一种发展趋势。

为了标识Swing组件,Swing组件的在其名称前冠以J字母,例如,在AWT中的Button

类,在Swing中为JButton。另外,AWT存在于包中,Swing组件存在于

包中。

Swing组件与AWT组件的最大不同是:Swing组件完全由Java语言实现,功能更强

大,而AWT而不是。

Swing组件还提供了AWT组件无法实现的功能:

Swing按钮类和标签类除了显示文本标题,还可以显示图形标题

Swing容器可以加边框

Swing组件可以自动适应操作系统的外观,而AWT组件总是保持相同的外

Swing组件可以设计成圆形,而不一定是矩形

通过Swing组件的方法改变其外观和形为

不能在Swing的顶层容器(如JApplet、JFrame)直接加入组件,而要先获得

容器,再在容器中加入组件。

二、编程题

1.如图6-17所示。标签1的字号比文本框的字号大,当单击按钮时若输入文框中的

数正确,则标签2文本显示正确,否则显示不正确。

图6-17

import .*;

import .*;

public class program1 extends Frame implements ActionListener{

标签1

6+9=

正确

15

OK

文本框

标签2

Label lb1=new Label("6+9=");

Label lb2=new Label(" ");

TextField tf=new TextField(3);

Button bt=new Button("OK");

public program1(){

t(new Font("Arial",,24));

setLayout(new FlowLayout());

add(lb1);

add(tf);

add(lb2);

add(bt);

ionListener(this);

2