JAVA复习题99580_第1页
JAVA复习题99580_第2页
JAVA复习题99580_第3页
JAVA复习题99580_第4页
JAVA复习题99580_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精选文库第4-7章 面向对象程序设计一、选择题1. 下列不属于面向对象编程的三个特征的是A. 封装B. 指针操作C. 多态性D. 继承2.在Java接口中,下列选项中有效的方法声明是(AB)。(选择二项)A、publicvoidaMethod();B、voidaMethod();C、protectedvoidaMethod();D、privatevoidaMethod();3. 下列类的定义,错误的是A. public class test extends ObjectB. final class operatorsC. class Point D. void class Point 4. 关键字supper的作用是A. 用来访问父类被隐藏的成员变量B. 用来调用父类中被重载的方法C. 用来调用父类的构造函数D. 以上都是5. 下面程序定义了一个类,关于该类说法正确的是abstract class abstractClassA. 该类能调用new abstractClass(),方法实例化为一个对象B. 该类不能被继承C. 该类的方法都不能被重载D. 以上说法都不对6. 关于对象的删除,下列说法正确的是A. 必须由程序员完成对象的清除B. java把没有引用的对象作为垃圾收集起来并释放C. 只有当程序中调用System.gc()方法时才能进行垃圾收集D. java中的对象都很小,一般不进行删除操作。7. 下列说法正确的是A.java中包的主要作用是实现跨平台功能B.package语句只能放在import语句后面C.包(package)由一组类(class)和接口(interface)组成D.可以用#include关键词来标明来自其它包中的类;8. 关于构造方法,下列说法错误的是A. 构造方法不可以进行方法重写B. 构造方法用来初始化该类的一个新的对象C. 构造方法具有和类名相同的名称D. 构造方法不返回任何数据类型9. 请将程序补充完整1._abstract_ class C2.3. abstract void callme()4. void metoo5. 6. System.out.println(“类C的metoo()方法”);7. 8. 9. class D_extends_C10. 11. void callme()12. 13. System.out.println(“重载C类的callme()方法”);14. 15. 16. public class Abstract17. 18. public static void main(String args)19. 20. C c=_new_D();21. c.callme();22. c.metoo();23. 24. 10.以下关于抽象类和接口的说法错误的是()A、抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承。但是一个类却可以实现多个接口。B、在抽象类中可以没有抽象方法C、实现抽象类和接口的类必须实现其中的所有方法,除非它也是抽象类。接口中的方法都不能被实现D、接口中定义的变量默认是publicstaticfinal型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。E、接口中的方法都必须加上public关键字。二、填空题1. 把对象实例化可以生成多个对象,使用_new_运算符为对象分配内存空间。2. java程序引入接口的概念,是为了弥补只允许类的_单继承_的缺憾。3. java语言以_类_为程序的基本单位,它是具有某些共同特性实体的集合,是一种抽象的概念。4. 抽象方法只能存在于抽象类中。抽象方法用关键字_abstract_来修饰。5. java语言中_object_是所有类的根.6. 在java中有一种叫做_构造函数_特殊方法,在程序中用它来对类成员进行初始化.7. new是_创建_对象的操作符.8. 继承主要强调子类在父类的基础上取”长”补”短”,而_多态性_主要强调的是类与类之间的传输9. 我们在java程序中,把关键字_super_加到方法名称的前面,来实现子类调用父类的方法10. 定义一个类包括定义类头和定义_类体_两个部分11. 在java程序里,同一类中重载的多个方法具有相同的方法名和_不同_的参数列表.重载的方法可以有不同的返回值类型12. java是面向对象语言,对象是客观事物的_实体_,对象与之是一一对应的,它是很具体的概念.13. java语言通过接口支持_多_继承,使类继承具有更灵活的扩展性14. 一个对象的生命周期包含三个阶段:生成, _使用_ 和清除15. java语言中,调用方法时,参数传递是_值_调用,而不是地址调用16. 接口是一种只含有抽象方法或_常量_的一种特殊抽象类17. 创建一个类就是创建一个新的数据类型,而类在java中属于_复合_数据类型。18. abstract方法_不能_(不能或能)与final并列修饰同一个类19. 如果一个类中定义了几个名为method的方法,这些方法的参数都是整数,则这些方法的_参数个数_必须是不同的,这种现象称为方法的重载。第8章 异常处理一、选择题1.java中用来抛出异常的关键字是A.tryB.catchC.throwD.finally2.关于异常,下列说法正确的是A.异常是一种对象B.一旦程序运行,异常将被创建C.为了保证程序运行速度,要尽量避免异常控制D.以上说法都不对3.()类是所有异常类的父类。A.ThrowableB.ErrorC.ExceptionD.AWTError4.java语言中,下列哪一子句是异常处理的出口A.try子句B.catch子句C.finally子句D.以上说法都不对5.下列程序的执行,说法错误的是class MultiCatch public 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.程序将输出第19行的异常信息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) try procedure(); int a=args.length; int b=42/a; System.out.println(“b=”+b); catch(ArithmeticException e) System.out.println(“除0异常:”+e); A.程序只输出第12行的异常信息B.程序只输出第26行的异常信息C.程序将不输出异常信息D.程序将输出第12行和第26行的异常信息7.下面程序抛出了一个“异常”并捕捉它。请在横线处填入适当内容完成程序。class TrowsDemo static void procedure() throws IllegalAccessExcepton System.out.println(“inside procedure”); throw_IllegalAccessException(“demo”); public static void main(String args) try procedure(); _ System.out.println(“捕获:”+e); 二、填空题1. catch子句都带一个参数,该参数是某个异常的类及其变量名,catch用该参数去与_出现异常_对象的类进行匹配。2. java虚拟机能自动处理_运行(runtimeException)_异常。3. 变量属性是描述变量的作用域,按作用域分类,变量有局部变量、类变量、方法参数和_异常处理参数_(全局变量)_4. 同一段程序可能产生不止一种异常。可以放置多个_catch_子句,其中每一种异常类型都将被检查,第一个与之匹配的就会被执行。5. 捕获异常要求在程序的方法中预先声明,在调用方法时用try-catch-_finally_语句捕获并处理。6. java语言认为那些可预料和不可预料的出错称为_异常_7. 按异常处理不同可以分为运行异常、捕获异常、声明异常和_抛出异常_几种。8. 抛出异常的程序代码可以是_自定义的异常(java应用小程序)_或者是JDK中的某个类,还可以是JVN.9. 抛出异常、生成异常对象都可以通过_throws_语句实现。10. 捕获异常的统一出口通过_finally_语句实现。11. java语言的类库中提供了一个_ Throwable_类,所有的异常都必须是它的实例或它子类的实例。12. Throwable类有两个子类:_ Errow_类和Exception类。13. 对程序而言,一般有编译错误和_运行_错误两类。14下面程序定义了一个字符串数组,并打印输出,捕获数组超越界限异常。请在横线处填入适当的内容完成程序。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+;第10章 输入输出一、选择题1流的传递方式是(B) A. 并行的 B. 串行的 C. 并行和串行 D. 以上都不对2下列不是java的输入输出流的是(A) A. 文本流 B. 字节流 C. 字符流 D. 文件流3凡是从中央处理器流向外部设备的数据流称为(D) A. 文件流 B. 字符流 C. 输入流 D. 输出流4获取一个不包含路径的文件名的方法为(A)A. String getName( ) B. String getPath( ) C. String getAbslutePath( ) D. String getParent( )5下列属于文件输入输出类的是(D)A. FileInputStream和FileOutputStream B. BufferInputStream和BufferOutputStream C. PipedInputStream和PipedOutputStream D. 以上都是6下列不属于FileInputStream输入流的read(D)成员函数的是()A. int read(); B. int read(byte b); C. int read(byte b,int offset,int len); D. int read(int line);7当处理的数据量很多,或向文件写入很多次小数据,一般使用(C)流A. DataOutput B. FileOutput C. BufferedOutput D.PipedOutput8当把一个程序、线程或代码段的输出连接到另一个程序、线程或代码短的输入时,应使用(D)流A. DataOutput B. FileOutput C. BufferedOutput D. PipedOutput当要将一文本文件当作一个数据库访问,读完一个纪录后,跳到另一个纪录,它们在文件的不同地方时,一般使用(B)类访问。A. FileOutputStream B. RandomAccessFile C. PipedOutputStream D. BufferedOutputStream10java中,实现通过网络使用URL访问对象的功能的流是(A)A. URL输入流B. Sock输入流 C. PipedInputStream输入流 D. BufferedInputStream输入流二、填空题1java的输入输出流包括_字节流_、字符流、文件流、对象流以及多线程之间通信的管道。java中的非字符输出流都是_OutputStream_抽象类的子类。3java对I/O访问还提供了同步处理机制,保证某时刻只有一个线程访问一个I/O流,这就_过滤流_4. java中的字符输出流都是抽象类_Writer_的子类.5. DataOutputStream数据流向文件里写数据的方法为_writer()_.6. RandomAccessFile所实现的接口是_DateInput_和DataOutput接口.7. 文件类_File_是java.io中的一个重要的非流类,里面封装了对文件系统进行操作的功能.8. 文件操作中经常需要的是随机访问, java中的_RandomAccessFile_类提供了随机访问文件的功能.9.下列程序实现从控制台输入并读取输出字符串. 请将程序补充完整 import java.io.*; public class CharInput public static void main(String args) throws java.io.IOException String s; inputStreamReader ir; BufferedReader in; ir=new_ InputStreamReader _(System.io); in=new_ BufferedReader _(ir); while (s=in._ readLine()_)!=null) System.out.println(“Read;”+s); 10. 下列程序实现从当前目录的date.ser文件中读取文件内容并显示出来.请将程序补充完整. import java.io.*; import java.util.Date; public class UnSerializeDate UnSerializeDate() Date d=null; try FileInputStream f=new _ FileInputStreamf _(“date.ser”); ObjectInputStream s=new ObjectInputStream(_); d=(Date) s.readObject(); f.close(); catch(Exception e) e.printStackTrace(); System.out.println(“Unserialized Date object from date.set”); System.out.println(“Date:”+d); public static void main(String args) new UnSerializeDate(); 第11章 多线程一、选择题1. 线程调用了sleep()方法后,该线程将进入( C )状态。A.可运行状态B.运行状态C.阻塞状态D.终止状态2. 关于java线程,下面说法错误的是(C)A.线程是以CPU为主体的行为B.java利用线程使整个系统成为异步C.创建线程的方法有两种:实现Runnable接口和继承Thread类D.新线程一旦被创建,它将自动开始运行3. 在java中的线程模型包含()A. 一个虚拟处理器B. CPU执行的代码C. 代码操作的数据D. 以上都是4.在java语言中,临界区可以是一个语句块,或者是一个方法,并用(A)关键字标识。A. synchronizedB. includeC. importD. Thread5. 线程控制方法中,yield()的作用是(D)A. 返回当前线程的引用B. 使比其低的优先级线程执行C. 强行终止线程D. 只让给同优先级线程运行6. 线程同步中,对象的锁在()情况下持有线程返回A. 当synchronized()语句块执行完后B. 当在synchronized()语句块执行中出现例外(exception)时C. 当持有锁的线程调用该对象的wait()方法时D. 以上都是7. 在以下()情况下,线程就进入可运行状态 CA. 线程调用了sleep()方法时B. 线程调用了join()方法时C. 线程调用了yield()方法时D. 以上都是8. java用()机制实现了进程之间的异步执行 BA. 监视器B. 虚拟机C. 多个CPUD. 异步调用9. 下列程序实现简单的线程调度,请回答以下问题:Thread myThread=new MyThreadClass();myThread.start();try myThread.sleep(10000);catch(InterruptedException e)myThread.stop();程序执行完第一行后,线程进入_A_状态;程序执行完第二行后,线程进入_B_状态;程序开始执行第五行时,线程进入_C_状态;程序执行完第五行后,线程进入_B_状态;程序执行完第十行后,线程进入_D_状态;A.新建状态B.可运行状态C.阻塞状态D.终止状态10.Thread类的方法中,toString()方法的作用是()A. 只返回线程的名称B. 返回当前线程所属的线程组的名称C. 返回当前线程对象D. 返回线程的名称二、填空题1. _多线程_是java程序的并发机制,它能同步共享数据、处理不同的事件。2. 线程是程序中的一个执行流,一个执行流是由CPU运行程序的代码、_操纵程序的数据_所形成的,因此,线程被认为是以CPU为主体的行为。3. 线程的终止一般可以通过两种方法实现:自然撤销或者是_被停止_.4. 线程模型在java中是由_java.lang.Thread_类进行定义和描述的。5. 线程的创建有两种方法:实现_Runnable_接口和继承Thread类。6. 多线程程序设计的含义是可以将程序任务分成几个_并行_的子任务。7. 按照线程的模型,一个具体的线程也是由虚拟的CPU、代码与数据组成,其中代码与数据构成了_线程体_,线程的行为由它决定。8. java中,新建的线程调用start()方法、如myThread.start(),将使线程的状态从New(新建状态)转换为_可运行状态_。9. 多线程是java程序的_并发_机制,它能同步共享数据,处理不同事件。10. 进程是由代码、数据、内核状态和一组寄存器组成,而线程是表示程序运行状态的_寄存器_,如程序计数器、栈指针以及堆栈组成。11. Thread类提供了一系列基本线程控制方法,如果我们需要让与当前进程具有相同优先级的线程也有运行的机会则可以调用_yield()_方法。第13章 窗口程序设计一、选择题1.Window是宣示屏上独立的本机窗口,它独立于其它容器,Window的两种形式是(A)AJFrame和JDialogBJPanel和JFrameCContainer和ComponentD . LayoutManager和Container2.框架(JFrame)的缺省布局管理器就是(C)A.流程布局(Flow Layout)B.卡片布局(Card Layout)C.边框布局(Border Layout)D.网格布局(Grid Layout)3.java.awt包提供了基本的java程序的GUI设计工具,包含控件、容器和(A)A.布局管理器B.数据传送器C.图形和图像工具D.用户界面构件4.所有Swing构件都实现了(C)接口A.ActionListenerB.SerializableC.AccessibleD.MouseListener5.事件处理机制能够让图形界面响应用户的操作,主要包括(D)A.事件B.事件处理C.事件源D.以上都是6.Swing采用的设计规范是(B)A.视图-模式-控制B.模式-视图-控制C.控制-模式-视图D.控制-视图-模式7.抽象窗口工具包(A )是java提供的建立图形用户界面GUI的开发包.A.AWTB.SwingC.Java.ioD.Java.lang 8.关于使用Swing的基本规则,下列说法正确的是(D )A.Swing组件可直接添加到顶级容器中B.避免使用非Swing的重量级组件C.Swing的JButton不能直接放到JFrame上D.以上说法都对9.(C )布局管理器使容器中各个组件呈网格布局,平均占据容器空间。A.FlowLayout B.BorderLayoutC.GridLayoutD.CardLayout二、填空题1. 在需要自定义Swing构件的时候,首先要确定使用哪种组件类作为所定制组件的_父类_,一般继承Jpanel类或更具体的Swing类.2. Swing的事件处理机制包括_事件源_、事件和事件处理者。3. Java事件处理包括建立事件源、_建立事件监听器_和将事件源注册到监听器。4. Java的图形界面技术经历了两个发展阶段,分别通过提供AWT开发包和_Swing_开发包来实现。5. 抽象窗口工具包_AWT (AbstractWindowToolkit _提供用于所有Java applets及应用程序中的基本GUI 组件。6. Window有两种形式:Frame( 框架)和_Diaog(对话框).7. 容器里的组件的位置和大小是由_布局管理器_决定的 。8. 可以使用setLocation(),setSize()或_setBounds_中的任何一中方法设定组件的大小或位置。9. 容器Java.awt.Container是_Component_类的子类。10. 框架的缺省布局管理器是_Border Layout_.。11. _Border布局管理器_包括五个明显的区域:东、南、西、北、中。12. _GridLayout_布局管理器是容器中各个构件呈网格布局,平均占据容器空间13. _下拉列表_组件提供了一个简单的“从列表中选取一个”类型的输入。14. 在组件中显示时所使用的字体可以用_setFont()_方法来设置。15. 为了保证平台独立性,Swing是用_java_编写。16. Swing 采用了一种MVC的设计范试,即_模型-视图-控制_.17. Swing GUI使用两种类型的类,即GUI类和_非GUI_支持类。18. _跟面板_由一个玻璃面板、一个内容面板和一个可选择的菜单条组成。19. 对Swing构件可以设置_一个或多个_边框。20. _模式_对话框在被关闭前将阻塞包括框架在内的其他所有应用程序的输入。三、读程序后写出结果import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class ExGui3 extends JFrame implements ActionListenerprivate JPanel p;private JButton bw, bc, bfile, bhelp;public static void main(String args) new ExGui3();public ExGui3() Container c=getContentPane();bw = new JButton(西);bc = new JButton(空白区域);c.add(bw, BorderLayout.CENTER);c.add(bc, BorderLayout.CENTER);p = new JPanel();bfile

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论