Java习题集第七章图形用户界面

目录

第七章图形用户界面

一.单项选择题

二、填空题

三. 简答题

四.程序阅读题

五.程序设计题


一.单项选择题

1.Window是宣示屏上独立的本机窗口,它独立于其它容器,Window的两种形式是()

A.Frame和Dialog                          B.Panel和Frame         

C.Container和Component              D.LayoutManager和Container

2.框架(Frame)的缺省布局管理器就是()

A.流程布局(Flow Layout)          B.卡布局(Card Layout)

C.边框布局(Border Layout)        D.网格布局(Grid Layout)

3.java.awt包提供了基本的java程序的GUI设计工具,包含控件. 容器和()

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

C.图形和图像工具           D.用户界面构件

4.所有Swing构件都实现了()接口

A. ActionListener              B. Serializable

C. Accessible                    D. MouseListener

5.事件处理机制能够让图形界面响应用户的操作,主要包括()

A. 事件            B. 事件处理         C. 事件源             D. 以上都是

6. Swing采用的设计规范是()

A. 视图----模式----控制         B. 模式-----视图---控制

C. 控制-----模式----视图        D. 控制----视图-----模式

7. 抽象窗口工具包(  )是java提供的建立图形用户界面GUI的开发包.

A. AWT             B.Swing         C. Java.io       D. Java.lang

8. 关于使用Swing的基本规则,下列说法正确的是( )

A. Swing构件可直接添加到顶级容器中

B. 要尽量使用非Swing的重要级构件

C. Swing的Jbutton不能直接放到Frame上

D. 以上说法都对

9.下列不属于java.event包中定义的事件适配器的是(  )

A.构件适配器           B.焦点适配器       C.键盘适配器       D.标签适配器

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

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

11.paint()方法使用哪种类型的参数? (    )

A. Graphics                 B. Graphics2D            C. String             D. Color

12.以下哪项可能包含菜单条(                     )。

A. Panel                       B. Frame                   C. Applet               D. Dialog

13.如果有一个对象 myListener ( 其中 myListener 对象实现了 ActionListener 接口 ), 下列哪条语句使得 myListener 对象能够接受处理来自于 smallButton 按钮对象的动作事件 ?

A. smallButton.add(myListener);                    B. smallButton.addListener(myListener);

C. smallButton.addActionListener(myListener);    D.  smallButton.addItem(myListener);

14. 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是(  )

A. p.addB.;        B. p.add(b,"North");      C. p.add(b,"South");      D. b.add(p,"North");

15. 声明并创建一个按钮对象b,应该使用的语句是(     )

A. Button b=new Button();            B. button b=new button();

C. Button b=new b();                    D. b.setLabel(“确定”);

16. Frame对象默认的布局管理器是(   )

A. FlowLayout                        B. BorderLayout   

C. CardLayout                         D. null

17.如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?

 A. BoxLayout    B. GridLayout     C.BorderLayout     D.FlowLouLayout

18.paint()方法使用哪种类型的参数? (    )

 A. Graphics    B. Graphics2D        C. String      D. Color

19.下列哪一项不属于Swing的顶层容器?(   )

A. JApplet    B. JTree     C. JDialog    D. JFrame

20.进行Java基本的GUI设计需要用到的包是(   )。

A. java.io     B. java.sql       C. java.awt      D. java.rmi

21.当点击鼠标或者拖动鼠标时,触发的事件是下列的哪一个?(  )

A. KeyEvent    B. ActionEvent   C. ItemEvent   D. MouseEvent

. 填空题

1.在需要自定义Swing构件的时候,首先要确定使用那种构件类作为所定制构件的______,一般继承Jpanel类或更具体的Swing类.

2.Swing的事件处理机制包括_____. 事件和事件处理者。

3.Java事件处理包括建立事件源. _______和将事件源注册到监听器。

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

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

6.Window有两种形式:Frame( 框架)和_____.

7.容器里的组件的位置和大小是由_____________决定的 。

8.可以使用setLocation(),setSize()或____________中的任何一中方法设定组件的大小或位置。

9.容器Java.awt.Container是_____________类的子类。

10.框架的缺省布局管理器是_________.。

11.______________包括五个明显的区域:东. 南. 西. 北. 中。

12.__________布局管理器是容器中各个构件呈网格布局,平均占据容器空间_________组件提供了一个简单的“从列表中选取一个”类型的输入。

13.在组件中显示时所使用的字体可以用____________方法来设置。

14.为了保证平台独立性,Swing是用________编写。

15.Swing 采用了一种MVC的设计范试,即___________.

16.Swing GUI使用两种类型的类,即GUI类和__________支持类。

17.________由一个玻璃面板. 一个内容面板和一个可选择的菜单条组成。

18.对Swing构件可以设置_______边框。

19.___________对话框在被关闭前将阻塞包括框架在内的其他所有应用程序的输入

20. Java语言中提供的GUI功能主要由java.awt包和_java.swing_包中的类和接口实现。

. 简答题

1.  请描述 AWT事件模型。

2.什么是事件. 事件源和事件监听器?简述使用事件监听器进行事件处理的过程。

四.程序阅读题

1. 阅读下面的程序,回答问题。

        import java.awt.*;

    import javax.swing.*;

    public class T extends JFrame {

        public T ( ) {

            super("GridLayout");

            Container  con=this.getContentPane();

            con.setLayout(new GridLayout(2,3));

            con.add(new JButton("a")); 

            con.add(new JButton("b"));

            con.add(new JButton("c")); 

            con.add(new JButton("d"));

            con.add(new JButton("e"));

            con.add(new JButton("f"));

            setSize(200, 80);

            setVisible(true);

        }

        public static void main(String args[]) {

           new T();       

        }

       }

u画图表示程序运行后的图形界面。

v如果程序通过实现某个接口处理按钮的动作事件,则该接口名为何?接口中的方法头声明如何?

. 程序设计题

1. 编写一个Frame框架应用程序,要求如下:

(1) 在窗口设置两个菜单“文件”. “编辑”

(2) 在“文件”菜单里添加三个菜单项“打开”. “保存”. “关闭”

(3) 在“编辑”菜单里添加两个菜单项“复制”. “粘贴”

(4) 点击关闭菜单项时,使程序关闭。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1. 假设有以下数组: ``` int[] arr = {5, 8, 2, 6, 9, 1}; ``` 编写代码将数组中的元素按照从小到大的顺序排序,并输出排序后的数组。 ```java int[] arr = {5, 8, 2, 6, 9, 1}; Arrays.sort(arr); for (int i : arr) { System.out.print(i + " "); } ``` 2. 编写一个方法,接收两个整数参数,返回它们的和。 ```java public static int add(int a, int b) { return a + b; } ``` 3. 编写一个方法,接收一个字符串参数,返回该字符串的长度。 ```java public static int getLength(String str) { return str.length(); } ``` 4. 编写一个方法,接收一个字符串参数,返回该字符串中第一个出现的数字字符。 ```java public static char getFirstDigit(String str) { for (char c : str.toCharArray()) { if (Character.isDigit(c)) { return c; } } return ' '; } ``` 5. 假设有以下数组: ``` int[] arr = {5, 8, 2, 6, 9, 1}; ``` 编写代码将数组中的元素按照从大到小的顺序排序,并输出排序后的数组。 ```java int[] arr = {5, 8, 2, 6, 9, 1}; Arrays.sort(arr); int[] reverseArr = new int[arr.length]; for (int i = 0; i < arr.length; i++) { reverseArr[i] = arr[arr.length - i - 1]; } for (int i : reverseArr) { System.out.print(i + " "); } ``` 6. 编写一个方法,接收一个整数参数,判断该数是否为质数(质数指只能被1和自身整除的正整数)。 ```java public static boolean isPrime(int num) { if (num < 2) { return false; } for (int i = 2; i <= Math.sqrt(num); i++) { if (num % i == 0) { return false; } } return true; } ``` 7. 假设有以下数组: ``` int[] arr = {5, 8, 2, 6, 9, 1}; ``` 编写代码将数组中的元素按照从小到大的顺序排序,并输出排序后的数组中第二小的元素。 ```java int[] arr = {5, 8, 2, 6, 9, 1}; Arrays.sort(arr); System.out.println(arr[1]); ``` 8. 编写一个方法,接收一个字符串参数,返回该字符串中所有数字字符的和。 ```java public static int sumDigits(String str) { int sum = 0; for (char c : str.toCharArray()) { if (Character.isDigit(c)) { sum += Character.getNumericValue(c); } } return sum; } ``` 9. 假设有以下数组: ``` int[] arr = {5, 8, 2, 6, 9, 1}; ``` 编写代码将数组中的元素按照从小到大的顺序排序,并输出排序后的数组中所有偶数元素的和。 ```java int[] arr = {5, 8, 2, 6, 9, 1}; Arrays.sort(arr); int sum = 0; for (int i : arr) { if (i % 2 == 0) { sum += i; } } System.out.println(sum); ``` 10. 编写一个方法,接收一个字符串参数,返回该字符串中所有大写字母的个数。 ```java public static int countUpperCase(String str) { int count = 0; for (char c : str.toCharArray()) { if (Character.isUpperCase(c)) { count++; } } return count; } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值