第 1 页:练习题 |
第 7 页:参考答案及解析 |
16.A。解析:本题考查Java语言的特点。Java语言是面向对象的,将客观世界看成由各种对象组成的;机器语言是计算机实际处理时使用的语言,把客观世界都看成由0和1组成;过去的高级语言大多数是面向过程的,比如C语言等,它们是通过数据结构与算法来描述客观世界;汇编语言属于低级语言。考生应注意区分各种语言的区别。本题正确答案为选项A。
17.B。解析:本题考查Java中的布局管理器。Pane和Applet默认的布局管理器是FlowLayout,构件在容器中放置规律是从上到下、从左到右进行放置;BorderLayout是Window、Frame和Dialog的默认布局管理器,在BorderLayout布局管理器中构件分成5个区域North、South、East、West和Center,每个区域只能放置一个构件。考生应注意区分各个布局管理器的区别和联系,以及各个布局管理器的特点。
18.B。解析:本题考查Java语言的虚拟机。Java本身的编译器用Java语言编写,运行系统的虚拟机用C语言实现。Java语言的执行模式是半编译和半解释型,程序首先由编译器转换为标准字节代码,然后由Java虚拟机去解释执行,字节代码实际上可以看作是虚拟机的机器代码。考生应当理解Java语言的实现机制,这属于考试重点。正确答案为选项B。
19.B。解析:本题考查Java的安全性特点。面向网络、分布式的Java语言,对非法入侵的防范是非常重要的,Java语言提供充分的安全保障,在运行程序时,有严格的访问权限检查。对字节代码执行前要检查,不允许使用指针,可防止对内存的非法入侵,它是目前安全性最佳的语言。但是Java并不是对程序执行前检查,而是对字节代码进行检查,Java编写好的程序首先由编译器转换为标准字节代码,然后由Java虚拟机去解释执行。
20.B。解析:本题考查考生对Java语言概念的理解。属于考试重点内容,考生应注意理解这些基本概念。考生应该明确,Java语言中可以有package语句,用来指定源文件存入所指定的包中,只能有0或1个,所以选项A说法错误;可以有0或多个以上import语句,但必须在所有类定义之前引入标准类,所以选项B说法正确;源文件中最多只能有一个public类,其他类的个数不限,所以选项C和选项D说法错误。
21.D。解析:本题考查类的声明。选项A错误,abstract用来声明抽象类,final用来声明最终类。这两个修饰词不能同时出现在类声明中;选项B错误,缺少class关键字;选项C错误,类不能声明为protected和private属性,且不以”;”结尾,也缺少class关键字;选项D正确,声明了一个可以公有继承的抽象类。
22.C。解析:本题考查考生对Java语言中的类和接口的理解。java.lang包提供了构成Java语言、Java虚拟机核心的类和接口。例如,类object、类String和类Thread等。对任何一个Java程序来说,这些类几乎都是必不可少的。java.lang还包含了许多由Java虚拟机发出的异常,这些异常也是”类”的一种。另外,java.lang包还包含一些用于访问系统资源的类,如ClassLoader等。java.lang包具有极其重要的作用,在程序开头可以不必明文编写装载它的代码。
23.C。解析:本题考查JDK目录结构。bin目录下有编译器、解释器和各种工具,如服务器工具、IDLpackage工具和jdb等。jre目录是Java程序运行环境的根目录,它下面有bin子目录,包括平台所用工具和库的可执行文件和DLL文件;lib子目录包括java运行环境的代码库。lib目录下都是库文件。demo目录下有各种演示例子。include目录下是Win32子目录,都是本地方法文件,选项C错误。
24.A。解析:本题是考查对文件输入、输出流的理解。通过类File的实例或者一个表示文件名称的字符串可以生成文件输入/输出流,在流对象生成的同时,文件被打开,然后就可以进行文件读/写,选项B说法错误。对于InputStream和OutputStream来说,它们的实例都是顺序访问流,即只能进行顺序的读/写,选项C说法错误。当从标准输入流读取数据时,从键盘输入的数据被缓冲,按键时,程序才会得到输入数据,选项D说法错误。
25.D。解析:本题考查类的声明。选项A中m没有被声明过,不能使用;选项B中虽然b是类Teacher的public成员变量,但在静态方法中,不能使用类中的非静态成员;选项C中a是类Person的private成员,在类外不能直接引用;选项D中change(intm)方法是pubtic方法,并且返回一个int型值,可以通过类的实例变量P引用并赋值给一个int型变量。
26.A。解析:本题考查Java类实现ZIP数据压缩方式。ZIP压缩文件结构:一个ZIP文件由多个Entry组成,每个Entry有一个唯一的名称,Entry的数据项存储压缩数据。ZiplnputStream实现了ZIP压缩文件的读输入流,支持压缩和非压缩Entry.题目程序中FileInputStreallD_fis=new FilelnputStream("test/file.zip")构造了一个文件输入 流,ZiplnputStream zis=new ZiplnputStream(fis)语句利用文件输入流fis构造了一个ZIP输入流,zis.getNextEntry()语句返回ZIP文件中的下一个Entry,并将输出流定位在此entry数据项的起始位置.
27.B。解析:本题考查容器的嵌套。将一个容器Panel1放到容器framel中的方法和在容器上添加部件是一样的,使用add()方法即可。
28.C。解析:本题考查Java中的运算符。首先要清楚程序里面涉及的运算符的含义。"<<"是按位左移运算符,”&”是按位与运算符,"|"是按位或运算符,"^"是按位异或运算符。题目中整型变量n=7相当于二进制中的111,n<<=3语句执行后,n值为lll000。相当于十进制的56,而语句n=n&n+1|n+2^n+3执行后,n值为57,n>>=2语句执行恬,n的值为14,所以选项C正确。
29.A。解析:本题考查文件操作。seek(long pos)是随机文件记录的查找,满足题意。lengh()方法是求随机文件字节长度的方法,不符合题意;Java中没有find()方法;skipBytes(int n)方法是使随机文件访问跳过指定字节,不符合题意。
30.B。解析:本题考查压缩文件流的概念。当输入一个ZIP文件时要将ZIP文件作为FilelnputStream构造方法的参数,所以选项B正确。而FilelnputStream对象又作为ZiplnputStream构造方法的参数出现。这里的ZipInputStream对象在将压缩文件内的输入项作为字符文本读出时即作为InputStreamReader的构造方法参数出现。最后,InputStreamReader对象作为BufferedReader的构造方法的参数,并且使用readLine()方法将压缩文件输入项作为文本读出。
31.C。解析:本题考查考生对Java中InputStream非字符输入流的掌握。所有的字节输入流都是从InputStream继承的,包括:ByteArraylnputStre8m,以字节数组作为输入流FilelnputStream,可对一个磁盘文件设计的数据进行处理;PipedInputStream,实现线程之间通信的一个类;FilterInputStream,过滤器输入流;SequenceInputStream,将多个输入流首尾相接;ObjectlnputStream,实现ObjeetInPut接15/。选项D中压缩文件输入流ZiplnputStream是InflaterInputStream的子类,而InflaterInputStream是FilterInputStream的子类,只有选项C中字符输入流CharInputStream类是字符流。本题涉及内容较多,要求对整个输入输出流有所了解。
32.C。解析:本题考查考生对创建线程的使用。创建线程有两种方法:通过实现Runnable接口创建线程和通过继承Thread类创建线程。通过实现Runnable接口创建线程,当实现Runnable接口的类的对象用来创建线程以后,该线程的启动将使得对象的run()方法被调用。通过继承Thread类创建线程,可以通过继承Thread类,并重写其中的run()方法定义线程体,然后创建该子类的对象创建线程。线程创建是考试重点内容,请务必掌握。
33.C。解析:本题考查JavaApplication与Applet的区别。Applet与Application的主要区别在执行方式上,Applieation以main()方法为入口点运行,Applet要在浏览器或appletviewer中运行,运行过程比Application更复杂。两者都是通过”javac”命令编译,所以只有选项C说法正确.
34.B。解析:本题考查Applet程序的运行方式。在Applet运行时,首先由浏览器调用init()方法,所以选项B正确。初始化完成后,将调用start()方法使Applet成为激活状态。当Applet被覆盖时.可用stop()方法停止线程。关闭浏览器时调用destroy(),彻底终止Applet,从内存中卸载并释放该Applet的所有资源。Applet的生命周期及其运行方式是考试重点,应该牢记。
35.C。解析:本题考查线程优先级的概念。首先应该了解Java的线程是有优先级的,并且可以控制其优先级,可以排除选项A;选项B和选项C本身就矛盾,故选项D是错器的,B和C不能同时选择。线程的优先级在创建线程时可以设置,也可以通过getPriority()方法来获得线程的优先级,通过setPriority()方法来设定线程的优先级。线程的优先级属于考试重点内容,应该重点掌握。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |