秋季北邮《Java技术》期末考试复习题.docx
《秋季北邮《Java技术》期末考试复习题.docx》由会员分享,可在线阅读,更多相关《秋季北邮《Java技术》期末考试复习题.docx(26页珍藏版)》请在冰豆网上搜索。
秋季北邮《Java技术》期末考试复习题
《Java技术》课程2019年春季期末考试复习题
二、考试重点(占期末考试成绩60%)
一、单项选择题
1.计算机硬件能直接执行的只能是(B)。
A.符号语言程序B.机器语言程序C.汇编语言程序D.高级语言程序
2.Java语言属于(C)。
A.面向过程的解释型语言B.面向过程的编译型语言
C.面向对象的解释型语言D.面向对象的编译型语言
3.根据TIOBE编程语言社区排行榜的统计,使用率居于前三的编程语言是(A)。
A.Java、C、C++B.Java、C#、C++
C.Java、Python、RubyD.Objective-C、C++、Java
4.下述Java平台中,最适于开发嵌入式系统应用程序的是(C)。
A.JavaSEB.JavaEEC.JavaMED.JavaApplet
5.下面关于Java类文件的说法错误的是(D)。
A.Java编译器会为源程序中的每个类单独生成一个类文件
B.Java类文件中存储的代码必须符合JVM规范
C.Java类文件中存储的代码是二进制形式的代码
D.Java类文件必须用Java语言编写得到
6.下列关于Eclipse说法错误的是(A)。
A.使用Eclipse开发Java程序时,程序员编辑源程序后即可运行该程序,因此无编译程序的过程
B.Eclipse中的Workspace用于存储工程的路径
C.在Windows系统下,Eclipse程序包解压缩后即可直接使用,无需安装
D.Eclipse是一个基于Java的、可扩展的、开放源代码的开发平台
7.下列关于IDE开发环境Eclipse的说法错误的是(D)。
A.Eclipse可以通过插件(plugin)的方式扩展其功能
B.Eclipse联盟是由IBM公司捐资组建的
C.Eclipse使用了SWT图形界面技术
D.Eclipse的运行不需要有JRE的支持
8.关于Eclipse的视景说法错误的是(C)。
A.每个视景都定义了工作台中各个视图的初始设置和布局
B.一个工作台窗口包含多个独立的视景,但同一时刻只有一个视景是对用户可见的
C.视景的布局是可以改变的,但改变多次后无法再恢复到初始设置
D.每个视景都有自己的视图和编辑器,用户可以在各个视景间切换
9.在Java中,由Java编译器自动导入,而无需在程序中用import导入的包是(A)。
A.java.langB.java.awtC.java.ioD.java.applet
10.在Java中,用package语句声明一个包时,该包的层次结构必须是(B)。
A.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同11.下面不是包的用途的是(A)。
A.规定一组类的对外界面B.方便类的查找和使用C.防止命名冲突D.访问控制
12.Java中用于描述对象的状态的语法成分是(B)。
A.修饰符B.变量C.方法D.语句
13.Java中用于描述对象的行为的语法成分是(C)。
A.常量B.变量C.方法D.语句
14.应用程序的main方法中有以下语句:
Strings1=newString("abc");
Strings2=newString("abc");
booleanb1=s1.equals(s2);
booleanb2=(s1==s2);
System.out.print(b1+""+b2);
则输出的结果是(A)。
A.truefalseB.falsetrueC.truetrueD.falsefalse
15.应用程序的main方法中有以下语句:
Strings="12";s=s+34;System.out.println(s);则下述说法正确的是(C)。
A.程序有错误,不能通过编译
B.程序没有错误,运行输出结果为:
46
C.程序没有错误,运行输出结果为:
1234
D.程序没有错误,运行输出结果为:
12
16.设有如下类定义
classFruit{//水果类intgrams;//克数(质量)Fruit(intgrams){this.grams=grams;}inttotalCalories(){//卡路里(热量)returngrams*10;}}则创建一个Fruit类的对象实体的语句是(D)。
A.Fruitf;B.Fruit(30);C.newFruit();D.newFruit(30);
17.设有如下程序段classTest{privateintm;publicstaticvoidfun(){//somecode…}}要使成员变量m能够被方法fun()直接访问,则下面选项正确的是(C)。
A.将privateintm改成protectedintm
B.将privateintm改成publicintm
C.将privateintm改成staticintm
D.将privateintm改成intm
18.设有如下类定义classA{privateinti;protectedintj;}
classBextendsA{privateintk;protectedintm;}则下面叙述最为准确的是(A)。
A.类B的对象包含数据域i,j,k,m
B.类B的对象包含数据域j,k,m
C.类B的对象包含数据域k,m
D.类B的对象包含数据域m
19.下述关于重载和覆盖的叙述正确的是(A)。
A.子类方法覆盖父类方法时,子类方法不能比父类方法更“私有”
B.静态方法不能被重载C.私有方法不能被重载
D.重载方法不能抛出父类中的不可检测异常
20.下述关于构造方法的叙述正确的是(B)。
A.构造方法不能被重载B.构造方法不能被覆盖
C.构造方法可以返回一个基本数据类型的数据或者一个对象的引用
D.构造方法的代码在执行时,先执行子类中的代码,然后再向上执行它祖先中的代码
21.下面叙述正确的是(C)。
A.语句“XextendsY”是正确的,当且仅当X是一个类,Y是一个接口
B.语句“XextendsY”是正确的,当且仅当X是一个接口,Y是一个类
C.语句“XextendsY”是正确的,当且仅当X和Y都是类,或都是接口
D.语句“XextendsY”是正确的,对于X和Y是类和接口的任意组合
22.以下接口定义正确的是(D)。
A.interfaceB{voidprint(){};}
B.abstractinterfaceB{voidprint();}
C.abstractinterfaceBextendsA1,A2{//A1,A2为已定义接口abstractvoidprint(){};}
D.interfaceB{voidprint();}
23.给定下面程序段
publicclassNavel{
privateintsize=7;
privatestaticintlength=3;
publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstub
newNavel().go();
}
voidgo(){
intsize=5;
System.out.println(newGazer().adder());
}
classGazer{
intadder(){returnsize*length;
}}}下面选项正确的是(B)。
A.输出15B.输出21C.抛出一个运行时异常D.编译错误
24.给定下面程序段
publicclassTest{
publicstaticvoidaMethod()throwsException{
try{
thrownewException();
}finally{
System.out.println("finally");}}
publicstaticvoidmain(Stringargs[]){
try{aMethod();}catch(Exceptione){
System.out.println("exception");}
System.out.println("finished");}}下面选项正确的是(C)。
A.通过编译,程序运行结果是finally
B.通过编译,程序运行结果是exceptionfinished
C.通过编译,程序运行结果是finallyexceptionfinished
D.编译错误,不能通过编译
25.下面关于异常的陈述正确的是(A)。
A.语句“catch(Xx)”能够捕获类X及其子类对象的异常
B.Error类是一个运行时异常
C.任何可能抛出一个Error类对象的语句必须被封装到一个try语句块中
D.任何可能抛出一个Exception类对象的语句必须被封装到一个try语句块中
26.下面能够创建一个DataOutputStream对象的语句是(D)。
A.NewDataOutputStream("out.txt");
B.NewDataOutputStream(newFile("out.txt"));
C.NewDataOutputStream(newFileWriter("out.txt"));
D.NewDataOutputStream(newFileOutputStream("out.txt"));
27.设在Windows系统上有文件d:
\temp.txt,下述不能创建一个File类实例的语句是(A)。
A.newFile("d:
\temp.txt");B.newFile("d:
\\temp.txt");
C.newFile("d:
/temp.txt");D.newFile("d:
//temp.txt");
28.下面可以从一个输入流中读取一行内容的方法是(B)。
A.next()B.nextLine()C.nextInt()D.nextDouble()
29.给定下面程序段
publicclassTry6implementsRunnable{
publicstaticvoidmain(String[]args){
Threadt=newThread(this);
t.start();
}
publicvoidrun(){
System.out.println("test");
}
}下面选项正确的是(A)。
A.程序不能编译通过,因为静态方法中不能使用this引用
B.程序能够通过编译,但是运行的时候没有任何输出,因为没有调用run()方法
C.程序能够编译和运行,并且在控制台窗口显示字符串test
D.上述都不对
30.当你使用语句Thread=newThread(object)创建线程对象时,object必须满足的条件是(D)。
A.object是Thread类的实例B.object是JFrame类的实例
C.object是Applet类的实例D.object是Runnable接口的实例
31.事件监听接口中的方法的返回值是(C)。
A.intB.StringC.voidD.Object
32.下面关于布局管理的叙述正确的是(D)。
A.顺序布局能够用于放置水平大小随容器大小变化而变化的组件
B.网格布局能够用于放置大小为常数定值的组件
C.边界布局能够用于放置大小为常数定值的组件
D.网格包布局能够提供网格布局类似的布局,并且允许个别的行和列具有自己特定的大小
33.当ActionEvent事件发生时,能够取得事件源对象的方法是(B)。
A.publicClassgetClass()B.publicObjectgetSource()
C.publicComponentgetSource()D.publicComponentgetTarget()
34.用鼠标单击JFrame窗口右上角的关闭按钮,发生的事件是(B)。
A.ItemEventB.WindowEventC.MouseMotionEventD.ComponentEvent
35.用来处理监听器的组件是(B)。
A.事件源对象B.监听器对象C.适配器对象D.代理器对象
36.下面关于JDBC的陈述错误的是(D)。
A.JDBC本身是个商标名
B.JDBC由一组用Java类和接口组成的
C.JDBC可以使程序员能够用纯JavaAPI来编写数据库应用程序
D.JDBC驱动程序必须由ORACLE公司开发
37.JDBC接口Statement中定义的execute()方法的返回类型是(C)。
A.ResultSetB.intC.booleanD.受影响的记录数量
38.JDBC接口Statement中定义的executeQuery()方法的返回类型是(A)。
A.ResultSetB.intC.booleanD.受影响的记录数量
39.JDBC接口Statement中定义的executeUpdate()方法的返回类型是(B)。
A.ResultSetB.intC.boolean.受影响的记录数量
40.获取ResutlSet对象rst的第一行数据,以下正确的是(C)。
A.rst.hashNext();B.rst.next();C.rst.first();D.rst.nextRow();
第一部分:
多项选择题
题1.属于Java运行时环境的组成部件的是(CD)。
A.Java编程语言B.Java类文件
C.JavaAPID.Java虚拟机
题2.下面哪些关键字能用来控制对类成员的访问(ABC)?
A.publicB.protected
C.privateD.default
题3.类B是一个抽象类,类C是类B的非抽象子类,下列创建对象x1的语句中正确的是(BC)。
A.Bx1=newB();B.Bx1=newC();
C.Cx1=newC();D.Cx1=newB();
题4.下面关于Java中异常处理try块的说法正确的是(AC)。
A.try块后通常应有一个catch块,用来处理try块中抛出的异常
B.catch块后必须有finally块
C.可能抛出异常的方法调用应放在try块中
D.对抛出的异常的处理必须放在try块中
题5.关于BufferedReader类的readLine()方法,以下说法正确的有(ACD)。
A.方法readLine()每次读取一行数据
B.方法readLine()每次读取一个字节
C.该方法可能抛出IOException异常,调用该方法时通常应将它放到try块中,并通过catch块处理异常
D.如果读到流的末尾,该方法返回的结果为null
填空题
1.程序设计语言按思维模式可以分为__面向过程的语言__和__面向对象的语言__两类。
2.Java的三个版本是JavaSE、JavaEE和JavaME。
3.完整的Java体系结构包括四个组件,分别是Java编程语言、Java类文件格式、Java应用程序编程接口和Java虚拟机。
4.Java运行时环境是由_Java虚拟机_和_核心类组合形成的。
5.在Java类文件中存储的二进制代码称为_字节码,它们是JVM的指令。
6.在主机操作系统上由软件实现的Java虚拟机实际上是用本地(如C/C++等)语言编写的程序。
7.Java虚拟机主要包括两个模块,一个是类装载器,另一个是执行引擎。
8.JDK提供了开发Java程序所需的各种工具(诸如Java编译器、Java虚拟机等程序)和资源,同时也提供了运行
Java程序的Java运行时环境。
9.环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用和具体程序相关。
10.开发一个完整的Java应用程序系统,为了便于管理,可能需要将一系列的程序文件、资源文件和其它相关文件
放到一个Java项目中。
11.Eclipse根据任务的不同把视图和编辑器预先划分为不同的类别,预设好视图的排列方式,并把每一个类别称为一个视景(或透视图)。
12.为管理和使用大量的类和接口,Java把一组类和接口封装在一个包内。
13.对象是程序的基本组成实体,类是创建对象的模版。
14.Java源程序中的类可以分为两种,分别是系统类和用户自己定义类。
15.编译程序的时候会自动导入到程序中的系统包是java.lang。
16.把基本数据类型包装成类的好处是可以提供基本数据类型的信息,还可以使用类的方法对数据进行操作。
17.在Java中,int类型的包装类是Integer,char类型的包装类是Character。
18.Integer类的parseInt()方法的功能是把一个字符串转换为一个整型数据。
19.Java把数据输出到控制台是使用标准输出流或System.out完成的。
20.Scanner类是在java.util包中定义的。
21.创建一个连接到标准输入流对象System.in的Scanner对象的语句是ScannermyScanner=newScanner(System.in);。
22.设myS是一个Scanner类的实例,则语句“intx=myS.nextInt();”的作用是读取一个整数,然后把这个整数赋给变量x。
23.Java提供的专门用于格式化输出数据的方法是System.out.printf()。
24.Java提供的用于处理日期和时间信息的系统类是java.util.Date。
25.字符串常量是用双引号括起来的字符序列。
26.Java用于处理处理字符串的类有两个,分别是String类和StringBuffer类。
27.Java的编译器会为每个字符串常量生成一个String类的实例。
28.取得字符串的长度的方法是调用字符串对象的length()方法。
29.在Java中,每当创建一个对象时,系统都会从它管理的内存中分配一定的空间给这个对象。
我们把创建好的对象叫做对象实体,而这个对象实体的“标识”叫做对象的引用。
30.构造方法有两个作用,一个作用是提供要实例化的类的类名,另一个作用是把新创建的对象初始化。
31.new关键字用于创建对象,new关键字被执行之后会返回新创建对象的引用。
32.在声明成员变量的时候,用关键字static修饰的变量是类变量,类变量也称为静态变量。
33.在声明成员变量的时候,没有被关键字static修饰的变量是实例变量。
34.在声明成员方法的时候,用关键字static修饰的方法是类方法,类方法也称为静态方法。
35.在声明成员方法的时候,没有被关键字static修饰的方法是实例方法。
36.调用类方法有两种情况,一种是通过类名调用类方法,另一种是通过对象名调用类方法。
37.在面向对象的程序中,方法是用于定义对象的某个特定功能的代码段。
38.方法名和方法的参数类型称为方法的签名。
39.调用方法的语句格式是reference.method(arguments)。
40.编译源程序时,编译器会为方法添加一个隐式参数,用来存储运行时刻传来的当前对象的引用。
41.面向对象技术有三个基本特性,分别是封装、继承和多态。
42.包含在对象属性中的数据值的集合通常称为对象的状态。
43.对象除了保存数据之外,还提供若干操作数据的方法,用以描述的对象的行为。
44.封装有两方面的意思:
一个方面是对象封装了功能的内容实现机制,另一个方面是对象封装了它持有的数据。
45.在Java中,通过在类定义里面定义属性和方法,强制实现对数据和功能的封装。
46.Java程序中的所有类都由系统类Object直接继承或间接继承得到的。
47.Java中的多态是指一个程序中同名的不同方法共存的情况。
48.Java中的多态分为编译时多态和运行时多态两类。
49.使用接口实际上要做两件事:
第一是声明接口(定义接口),第二是在类中实现接口。
50.回调是一种常见的程序设计模式,这种模式在Java中通常是用接口来实现。
51.所谓异常,就是程序的运行时错误。
52.“异常”产生时,意味着在当前环境下无法获得必要的信息来解决问题,我们所能做的就是从当前环境中跳出,并且把问题提交给上一级别的环境。
53.我们把生成异常对象并把它交给运行时系统的异常处理机制的过程称为抛出异常。
54.运行时系统的异常处理机制在方