2022年面向对象程序设计复习题[整 .pdf
《2022年面向对象程序设计复习题[整 .pdf》由会员分享,可在线阅读,更多相关《2022年面向对象程序设计复习题[整 .pdf(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第一章异常处理一、选择题1.java 中用来抛出异常的关键字是A、try B、catch C、throw D、finally 2.关于异常,下列说法正确的是A、异常是一种对象B、一旦程序运行,异常将被创建C、为了保证程序运行速度,要尽量避免异常控制D、以上说法都不对3.()类是所有异常类的父类。A、Throwable B、Error C、Exception D、AWTError 4.java 语言中,下列哪一子句是异常处理的出口A、try,子句B、catch,子句C、finally,子句D、以上说法都不对5.下列程序的执行,说法正确的是public class MultiCatch publi
2、c static void main(String args)try int a=args.length;int b=42/a;int c=1;c42=99;System.out.println(“b=”+b);catch(ArithmeticException e)System.out.println(“除 0 异常:”+e);catch(ArrayIndexOutOfBoundsException e)System.out.println(“数组超越边界异常:”+e);A、程序将输出第15 行的异常信息B、程序第 10 行出错C、程序将输出“b=42”D、程序将输出第15 和 19 行的异
3、常信息6.下列程序的执行,说法正确的是class ExMulti static void procedure()try int c=1;c42=99;catch(ArrayIndexOutOfBoundsException e)System.out.println(“数组超越界限异常:”+e);public static void main(String args)名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 36 页 -try procedure();int a=args.length;int b=42/a;System.out.println(“b=”+b);catch(A
4、rithmeticException e)System.out.println(“除 0 异常:”+e);A、程序只输出第12 行的异常信息B、程序只输出第26 行的异常信息C、程序将不输出异常信息D、程序将输出第12 行和第 26 行的异常信息7.下面程序抛出了一个“异常”并捕捉它。请在横线处填入适当内容完成程序。class TrowsDemo static void procedure()throws IllegalAccessException System.out.println(“inside procedure”);throw_new _IllegalAccessException
5、(“demo”);public static void main(String args)try procedure();_ System.out.println(“捕获:”+e);8.对于 catch 子句的排列,下列哪种是正确的()A、父类在先,子类在后B、子类在先,父类在后C、有继承关系的异常不能在同一个try程序段内D、先有子类,其他如何排列都无关9.在异常处理中,如释放资源、关闭文件、关闭数据库等由()来完成。A、try子句B、catch 子句C、finally子句D、throw 子句10.当方法遇到异常又不知如何处理时,下列哪种说法是正确的()A、捕获异常B、抛出异常C、声明异常D
6、、嵌套异常11.哪个关键字可以抛出异常?A、transient B、finally C、throwD、static 12一个异常将终止()A、整个程序B、只终止抛出异常的方法C、产生异常的try块D、上面的说法都不对二、填空题名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 36 页 -1、catch 子句都带一个参数,该参数是某个异常的类及其变量名,catch 用该参数去与 _异常 _对象的类进行匹配。2、java 虚拟机能自动处理_RuntimeException_ 异常。3、捕获异常要求在程序的方法中预先声明,在调用方法时用try-catch-_finally_ 语句捕获并处
7、理。4、java 语言认为那些可预料和不可预料的出错称为_Throwable_ _ 5、按异常处理不同可以分为运行异常、捕获异常、声明异常和_自定义异常 _几种。6、抛出异常、生成异常对象都可以通过Throws 句实现。7、捕获异常的统一出口通过_finally_ 语句实现。8、java 语言的类库中提供了一个_Throwable_ 类,所有的异常都必须是它的实例或它子类的实例。9、Throwable 类有两个子类:_Error_ 类和 Exception 类。10、对程序语言而言,一般有编译错误和_运行 _错误两类。11、下面程序定义了一个字符串数组,并打印输出,捕获数组超越界限异常。请在横
8、线处填入适当的内容完成程序。public class HelloWorld int i=0;String greetings=“Hello world!”,“No,I mean it!”,“HELLO WORLD!”;while(i4)_try_ System.out.println(greetingi);_catch_(ArrayIndexOutOfBoundsException e)System.out.println(“Re-setting Index Value”);i=-1;finally System.out.println(“This is always printed”);i+
9、;三、判断题1.(f)程序中抛出异常时(throw),只能抛出自己定义的异常对象。或子类的实例!2.(t)一个异常处理中finally 语句块只能有一个或者可以没有。3.(t)异常类对象代表当前出现的一个具体异常。4.(t)java语言中的所有异常类都是java.lang.Throwable的子类。5.(f)如果异常发生时,没有捕获异常的代码,程序会正常执行。四、编程题1参考下面的程序,试修改程序,捕获相关异常,使得程序能正常运行。提示:用错误数据测试,即可得到异常类名,运行时主方法参数输入 abc 测试 public class StringIndexOutOf 名师资料总结-精品资料欢迎下
10、载-名师精心整理-第 3 页,共 36 页 -public static void main(String args)System.out.println(字符串索引越界异常);String str=args0;System.out.println(“第四个字符为”+str.charAt(3);int aa=Integer.parseInt(args0);System.out.println(“平方为”+aa*aa);2 从命令行得到5 个整数,放入一整型数组,然后打印输出,要求:如果输入数据不为整数,要捕获Integer.parseInt()产生的异常,显示“请输入整数”,捕获输入参数不足5
11、 个的异常(数组越界),显示“请输入至少5 个整数”。3写一个方法void sanjiao(int a,int b,int c),判断三个参数是否能构成一个三角形,如果不能则抛出异常IllegalArgumentException,显示异常信息a,b,c+”不能构成三角形”,如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个整数,调用此方法,并捕获异常。第二章 图形用户界面一、判断题1.BorderLayout 是面板的缺省布局管理器。(t)2.当鼠标指针位于一个GUI 构件的边上时,发生一个MouseOver 事件。(f)3.一个面板(JPanel)不能被加入到另一个面板(JP
12、anel)中。()4.在 BorderLayout 中,添加到NORTH 区的两个按钮将并排显示。()5.在使用BorderLayout 时,最多可以使用5 个构件。()6.Swing 构件经常被称为轻量构件。()7.在 GUI 上输出文本或提示信息的方法是使用标签。()8.为了处理图形用户界面的事件,程序员必须注册一事件监听器。()9.用户在JtextField 和 JpasswordField 输入数据后键入回车键,可以激活一个事件。()10.JCheckBox 类和 JRadioButton 类都是JtoggleButtond 的子类。()11.程序员在创建一个Frame 时,至少必须创
13、建一个菜单,并将它加入Frame 中。()12.fill 变量属于GrideLayout 类。()13.在一个程序中不能同时使用Jframe 和 applet。()14.Jframe 和 applet 的左上角坐标为(0,0)。()15.JTextArea 的文本总是只读的。()16.JTextArea 类是Component 类的直接子类。()17.Box 的缺省布局是BoxLayout。()18.JTextArea 用于支持对多行文本的操作。()19.程序员可以在任何时候用JScrollPane 类的setHorizontalScrollBarPolicy 方法和setVerticalSc
14、rollBarPolicy 方法来设置JScrollPane 的水平滚动条和垂直滚动条。()20.JPanel 只能用来作为接受鼠标事件的专用绘图区域。()二、选择题1.鼠标被移动时会调用方法,并且注册一个事件监听器处理此事件。A actionPerformed B addItemListener C mouseMove 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 36 页 -D add 2.用户不能修改的文本是。A word 文档B txt 文档C 可编辑的D 不可编辑的3.用来在Container 上排列GUI 构件。A BorderLayout 类B Component
15、 类C 事件控制D 布局管理器4.为添加一个构件的add 方法是类方法。A BorderLayout B Component C Container D ButtonGroup 5.使用方法为构件容器设置布局管理器。A BorderLayout B setLayout C Container D Component 6.GUI 是的缩写。A 布局管理器B 资源管理器C 用户界面布局D 图形用户界面7.mouseDragged 事件先触发了一个事件接着又触发一个。A mousePressed B mouseClicked C mouseReleased D mouseEntered 8.Java
16、 程序的图形用户界面中有那些用户自定义成分?A 几何图形B 文字C 颜色控制D 图像E动画9.当构件中按钮的位置可以被自动调整,应使用哪种布局管理器:A BorderLayout B FlowLayout C CardLayout D GridLayout 11.使用类创建菜单对象。A Dimension 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 36 页 -B JMenu C JMenuItem D JTextArea 12.使用方法创建菜单中的分隔条。A setEditable B ChangeListener C add D addSeparator 13.向 JTe
17、xtArea 的方法传递false 参数可以防止用户修改文本。A setEditable B ChangeListener C add D addSeparator 17.下面哪个菜单组件可以被添加到任何组件中:A MenuBar B HelpMenu C CheckboxMenuItem D PopMenu E Menu 18.下面哪个组件是独立的组件:A Panel B Window C Frame D ScrollPanel E FileDialog 20.下面哪个布局管理器是非法的:A FlowLayout B BorderLayout C CardBagLayout D GridLa
18、yout 21实现下列哪个接口可以对TextField 对象的事件进行监听和处理?_ A MouseMotionListener B FocusListener C ActionListener D WindowListener 22 Frame 的默认的布局管理器是下列哪一个?_ A FlowLayout B CardLayout C GridLayout D BorderLayout 23下列哪个属于容器的构件?_ A JPnel B JButton C JFrame 名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 36 页 -D JApplet 24如果希望所有的控件在界面
19、上均匀排列,应使用下列哪种布局管理器?_ A BoxLayout B FlowLayout C BorderLayout D GridLayout 25监听事件和处理事件_。A 都由 Listener 完成B 由 Listener 和窗口分别完成C 由 Listener 和构件分别完成D 都由相应事件Listener 处登记过的构件完成26监听器接口的方法返回值是什么?A int B String C void D Object 27请问如下哪个方法可以将MenuBar 加入Frame 中?A setMenu()B setMenuBar()C add()D addMenuBar()三、简述题1
20、.什么是图形用户界面?它与字符界面有何不同?你是否使用过这两种界面?试列出图形用户界面中你使用过的组件。2.简述图形界面的构成成分以及它们各自的作用。设计和实现图形用户界面的工作主要有那两项?3.简述Java 的事件处理机制和委托事件模型。什么是事件源?什么是监听者?Java 的图形用户界面中,谁可以充当事件源?谁可以充当监听者?4.动作事件的事件源可以有那些?如何响应动作事件?5.找出下面语句中的错误,并说明如何改正。buttonName=Jbutton(“Caption”);JLable aLable,JLable;/create references;txtField=new Jtext
21、Field(50,“Default Text”);Container c=getContentPane();SetLayout(new GrideLayout(9,9);button1=new JButton(“North Star”);button2=new Jbutton(“South Pole”);C add(button1);C add(button2);6.文本框与文本区域在创建方法、常用方法和事件响应上有何异同?什么操作将引发文本事件?如何响应文本事件?编写Applet 包括一个文本框、一个文本区域和一个按钮,当用户单名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 3
22、6 页 -击按钮时,程序将文本区域中被选中的字符串复制到文本框中。7.什么是选择事件?那些操作将引发选择事件?可能产生选择事件的GUI 组件有那些?它们之间有什么异同?分别适合于什么场合?8.什么是调整事件?调整事件与选择事件有何不同?什么是滚动条/如何创建和使用滚动条?9.什么是容器的布局策略?试列举并简述Java 中常用的几种布局策略。10.找出下面语句中的错误,并说明如何改。Jmenubar b;mySlider=Jslider(1000,222,100,450);gbC fill=GridBagConstraints.NORTHWEST;/set fill /override to p
23、aint on a customized Swing component public void paintcomponent(Graphics g)g.drawString(“HELLO”,50,50);/create a JFrame and display it JFrame f=new JFrame(“A Window”);f.show();四、编程题1编辑一个小程序,显示一个半径为150 的圆内接五角星,要求圆为黄色填充,五角星为红 色,背景为蓝色,在图片的正下方显示文字“圆内接五角星”,字体为楷体12 号,白色,在下方画一个边框为5,长300,高180 的红色矩形。2 编辑一个小程
24、序,界面上加入一个标签,显示内容为你的姓名和班级,并注明是xx 月 xx 日作业,在标签下面增加列表、两个单选框(控制列表是否为多选状态),一个文本框,三个 按钮,分别控制将文本框的内容加入列表、删除、删除全部列表内容,当选择列表时,按照当前状态(是否多选),在文本框中显示用户选择的列表内容。再加入一个文本区,用来显示用户操作的过程,比如:您输入了文字XXX,您删除了xxx 等。3创建一个300200 的窗口,标题为“显示窗口程序”。4仿照记事本的GUI 编写一个JAVA 简易记事本程序。只要菜单及界面,具体功能除退出外均不用实现。5编辑一个应用程序,使用GridLayout 布局,用两个按钮
25、分别控制当前窗口现实三行两列和两行三列 的标签。第三章 多线程机制一、判断题1.如果线程死亡,它便不能运行。(T)2.在 Java 中,高优先级的可运行线程会抢占低优先级线程。(T)3.一个线程在调用它的start 方法之前,该线程将一直处于出生期。(T)4.当调用一个正在进行线程的stop()方法时,该线程便会进入休眠状态。(F)5.一个线程可以调用yield 方法使其他线程有机会运行。(T)6.线程可以调用yield 方法使低优先级的线程运行。(F)名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 36 页 -二、选择题1.Java 语言中提供了一个D线程,自动回收动态分配的内
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年面向对象程序设计复习题整 2022 面向 对象 程序设计 复习题
限制150内