锐聘学院Java考试题分析.docx
《锐聘学院Java考试题分析.docx》由会员分享,可在线阅读,更多相关《锐聘学院Java考试题分析.docx(17页珍藏版)》请在冰点文库上搜索。
锐聘学院Java考试题分析
Java程序设计期末复习题(2015-2016-1学年度)
第一章Java概述
1、Java体系有哪几部分构成?
(多选)(ABC)
A.JavaSEB.JavaEEC.JavaMED.Javac
2、与Jdk相关的3个重要的环境变量是?
(ABC)
A.JAVA_HOMEB.PATHC.CLASSPATHD.JPATHEXT
3、编译和运行Java程序分别用到的命令是?
(AC)
A.javacB.javadocC.javaD.javah
4、编译Java源程序文件时将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A.javaB.classC.htmlD.exe
5、Java的跨平台机制是由______实现的。
(D)
A.GCB.JavaDEC.htmlD.JVM
6、以下用于解释字节码文件的工具是(B)
A.javacB.javaC.javadocD.jar
7、JDK安装成功后,______目录用于存放Java开发所需要的类库。
(C)
A.binB.demoC.libD.jre
8、下面属于文档注释的标记是(D)
A.--B./C./*…*/D./**…*/
9、关于程序中的main方法,以下说法正确的有()(ABCD)
A.每个独立的、可执行的Java应用程序必须要有main()方法才能运行
B.main()方法是程序的主方法
C.main()方法是整个程序的入口,
D.程序运行时执行的第一个方法就是main()方法
10、关于Java跨平台技术的实现原理,以下说法正确的是(ABCD)
A.JVM在具体的操作系统之上运行,其本身具有一套虚拟机指令,但它通常是在软件而不是在硬件上实现,
B.JVM形成一个抽象层,将底层硬件平台、操作系统与编译过的代码联系起来,
C.Java字节码的格式通用,具有跨平台特性,但这种跨平台是建立在JVM虚拟机的基础之上
D.只有通过JVM处理后才可以将字节码转换为特定机器上的机器码,然后在特定的机器上运行,
第二章Java语言基础
1、常见的字符集有哪3种?
(ACD)
A.ASCIIB.BIG5C.GB2312D.unicode
2、变量的作用域可将变量分为哪两类?
局部变量和全局变量
3、定义常量的关键字是什么?
Final
4、关系运算符运算后返回的结果是什么类型?
(C)
A.整型B.浮点型C.布尔型D.字符型
5、下面赋值语句不正确的是_____。
(A)
A.floatf=2.3B.floatf=5.4f
C.doubled=3.14dD.doubled=3.1415
6、下面语句的输出结果是______。
(C)
intx=4;
System.out.println(“valueis”+((x>4)?
99.9:
9);
A.输出结果为:
valueis99.9B.输出结果为:
valueis9
C.输出结果为:
valueis9.0D.输出结果为:
语法错误
7、下面代码片段:
(A)
switch(m){
case0:
System.out.println("case0");
case1:
System.out.println("case1");break;
case2:
break;
default:
System.out.println("default");
}
当m的值为0时,将会输出______(A)。
A.case0B.case0Ccase0case1defaultD.default
case1
8、for循环的一般形式为:
for(初值;终值;增量)(D)
以下对for循环的描述中,正确的是______。
A.初值、终值、增量必须是整数B.for循环的次数是由一个默认的循环变量决定
C.初值和增量都是赋值语句,终值是条件判断语句D.for循环是一种计次循环,每个for循环都带有一个内部不可见循环变量,控制for循环次数
9、在Java中,如下代码段的输出结果为________(D)
publicstaticvoidmain(String[]args){
intnum=1;
while(num<6){
System.out.print(num);
if(num/2==0)
continue;
else
num++;
}
}
}
A.12345B.135C.24D死循环
10、关于循环说法错误的是_______(C)
A.while循环是先判断条件表达式是否为true,如果为true,则执行循环体
B.do-while则是先循环后判断,do-while至少会循环一次
C.for()括号中的分号可以一个也不要
D.for循环也是先判断再循环
11、以上哪种创建数组不正确________(C)
A.int[]a={1,2,3,4,5};B.int[]a=newint[2];
C.int[][]b=newint[][2];D.int[][]b=newint[2][];
第三章类与继承
1、方法的主要组成部分?
(ABCD)
A.修饰符B.返回值C.方法名D.参数
2、Java中包的分割符号是?
(A)
A..B.\C.\\D./
3、修饰静态成员的修饰符为?
(B)
A.finalB.staticC.voidD.abstract
4、当声明一个对象数组变量时,但并没有赋值时,在内存里发生了什么?
(A)
A.在栈内存里开辟了存放引用的空间B.在堆内存里开辟空间
5、构造方法何时被调用____。
(B)
A.类定义时B.创建对象时C.调用对象方法时D.使用对象的变量时
6、JAVA中,访问修饰符限制性最高的是____。
(A)
A.privateB.protectedC.publicD.缺省
7、下列关于面向对象的程序设计的说法中,不正确的是____(B)。
A.对象将数据和行为封装于一体
B.对象是面向对象技术的核心所在,在面向对象程序设计中,对象是类的抽象
C.类是具有相同特征(属性)和共同行为(方法)的一组对象的集合
D.类的修饰符可以是abstract(抽象),static(静态)或final(最终)
8、关于构造方法说法错误的是______。
(B)
A.构造方法的方法名必须与类名一致
B.构造方法没有返回类型,可以是void类型
C.如果在类中没有定义任何的构造方法,则编译器将会自动加上一个不带任何参数的构造方法
D.构造方法可以被重载
9、关于方法重载说法不正确的是_______。
(C)
A.必须在同一个类中B.方法名相同C.方法的返回值相同D.参数列表不同
10、关于包方面说法不正确的是_______(A)。
A.一个Java文件中只能有一条import语句
B.使用package关键字可以指定类所属的包
C.包在物理上的表现形式是嵌套的文件目录
D.导入包需要使用关键字import
11、关于静态成员说法错误的是______。
(D)
A.static关键字修饰的成员也称为静态成员
B.静态成员则可以直接通过类名调用
C.静态成员属于整个类,当系统第一次准备使用该类时,系统会为该类的类变量分配内存空间
D.静态成员不可以通过对象来调用
12、关于可变参数说法正确的是_______。
(C)
A.可变参数可以在参数列表的任何位置
B.一个方法中允许包含多个可变参数
C.可变参数的本质就是一个数组调用一个包含可变参数的方法时,只能传入多个参数,D.不能传入数组
第四章核心类
1、float对应的封装类为?
(C)
A.doubleB.floatC.FloatD.Double
2、装箱是将堆中的数据封装成对象放到栈中的过程,拆箱将栈中的数值存放到堆中的过程,这种说法正确吗?
(不对)
3、关于“==”和“equals”的区别得表述正确么?
(对)
前者比较的地址是否相对,即是否同一个对象,后者比较的是值是否相等
4、哪个是截取字符串的方法?
(B)
A."toUpperCase"B.“subString”
5、在控制台输入整数的时候,用下列Scanner类的哪个方法来接收不会报错?
(ABC)
A.nextIntB.nextC.nextFloatD.都会报错
6、用作数学运算和日期处理的类分别是?
(AC)
A.DateB.MethC.MathD.Time
7、int基本数据类型对应的封装类是____(C)。
A.IntB.ShortC.IntegerD.Long
8、System.out.println(“abc”+1+2)输出的结果是____。
(A)
A.abc12B.abc3C.“abc”+1+2D.3abc
9、下述代码的输出结果是____。
(C)
Stringstr="abcdef";
System.out.println(str.substring(2,4));
A.abcdefB.bcdC.cdD.cde
10、关于装箱和拆箱说法错误的是_____。
(D)
A.装箱是指将基本类型数据值转换成对应的封装类对象
B.装箱将栈中的数据封装成对象存放到堆中的过程
C.拆箱是将封装的对象转换成基本类型数据值
D.拆箱是是指将基本类型数据值转换成对应的封装类对象
11、下列不是String类的方法的是_______。
(C)
A.charAt(intindex)B.indexOf(Strings)C.beginWith(Strings)D.endsWith(Strings)
12、关于Object类说法不正确的是______。
(B)
A.Object类是所有类的顶级父类
B.Object对象类定义在java.util包
C.在Java体系中,所有类都直接或间接的继承了Object类
D.任何类型的对象都可以赋给Object类型的变量
13、关于String、StringBuffer和StringBuilder说法错误的是_______。
(B)
A.String创建的字符串是不可变的
B.StringBuffer创建的字符串是可变的,而所引用的地址一直不变
C.StringBuffer是线程安全的,因此性能比StringBuilder好
D.StringBuilder没有实现线程安全,因此性能比StringBuffer好
第五章类和类之间的关系
1、继承的主要作用是什么(ABC)
A.解决代码重用B.减少代码冗余C.便于扩展
2、类和类都有哪些关系?
(ABCD)
A.依赖B.关联C.聚合D.组合
3、匿名内部类适用于只需要使用一次的类,这种说法对吗?
对
4、运用单例模式只能创建出一个对象实例,这种说法正确吗?
对
5、在Java语言中,下面关于类的描述正确的是_____(B)。
A.一个子类可以有多个父类
B.一个父类可以有多个子类
C.子类可以使用父类的所有方法
D.子类一定比父类有更多的成员方法
6、下列____关键字修饰类后不允许有子类。
(D)
A.abstractB.staticC.protectedD.final
7、假设Child类为Base类的子类,则下面____创建对象是错误的。
(D)
A.Basebase=newChild()B.Basebase=newBase()
C.Childchild=newChild()D.Childchild=newBase();
8、关键字super和this说法不正确的是______。
(AB)
A.super(..)方法可以放在this(..)方法前面使用
B.this(..)方法可以放在super(..)方法前面使用
C.可以使用super(..)来调用父类中的构造方法
D.可以使用this(..)调用本类的其他构造方法
9、给定如下Java代码,关于super的用法,以下________哪个描述是正确的(c)
classStudentextendsPerson{
publicStudent(){
super();
}
}
A.用来调用Person类中定义的super()方法
B.用来调用Student类中定义的super()方法
C.用来调用Person类的无参构造方法
D.用来调用Person类的第一个出现的构造方法
10、关于内部类说法错误的是_______。
(D)
A.内部类能够隐藏起来,不为同一包的其他类访问
B.内部类是外部类的一个成员,并且依附于外部类而存在
C.Java内部类主要有成员内部类、局部内部类、静态内部类、匿名内部类
D.局部内部类可以用public或private访问修饰符进行声明
11、关于继承说法不正确的是_______。
(B)
A.在继承过程中,子类拥有父类所定义的所有属性和方法
B.在构造一个子类对象时,会首先调用自身的构造方法进行初始化,而后再调用父类的构造方法进行初始化
C.Java只支持单一继承
D.使用extends关键字使子类继承了父类
12、关于方法重写说法错误的_______。
(C)
A.父类中的私有方法不能被子类重写
B.父类的构造方法不能被子类重写
C.方法名以及参数列表必须完全相同,返回类型可以不一致
D.父类的静态方法不能被子类重写
第六章接口与抽象类
1、定义抽象类使用的关键字是?
(C)
A.interfaceB.instanceC.abstractD.abstract
2、关于接口描述正确的是?
(ABC)
A.接口里只能有公共方法B.接口里只能有抽象方法C.接口里只能有常量
3、instanceof关键字的作用?
(C)
A.声明对象B.声明类别C.鉴别对象的类型
4、实现接口的关键字是____。
(C)
A.abstractB.staticC.implementsD.extends
5、下面说法不正确的是____。
(C)
A.抽象类不能直接实例化
B.abstract不能与final同时修饰一个类
C.final类可以有子类
D.抽象类中可以没有抽象方法
6、下面的代码运行结果是____。
(C)
abstractclassBase{
abstractvoidmethod();
staticinti;
}
publicclassMineextendsBase{
publicstaticvoidmain(Stringargv[]){
int[]ar=newint[5];
for(i=0;iSystem.out.println(ar[i]);
}
}
A.一个0-5的序列将被打印。
B.有错误
C.Mine类必须声明成abstract。
D.报IndexOutOfBoundes错误。
7、关于抽象类说法错误的是_____。
(B)
A.抽象类需要在class前用关键字abstract进行修饰
B.抽象方法可以有方法体
C.有抽象方法的类一定是抽象类
D.抽象类可以没有抽象方法
8、关于接口描述错误的是_________。
( )
A.接口中的所有方法都是抽象方法
B.一个类可以实现多个接口,接口之间使用逗号进行间隔使用接口变量指向该接口的实现类的实例对象,这种使用方式也是多态性的一种体现
C.接口可以继承接口,使用extends关键字,接口的继承和类的继承一样,都是单继承
9、下面说法不正确的是_________。
(D)
A.一个类在实现一个或多个接口,
B.所有Java是支持多继承的
C.implements关键字用于实现接口
D.不能对接口直接实例化接口的继承与类的继承不一样,接口完全支持多重继承
10、下面关于抽象方法说法不正确的是_________(A)。
A.一个抽象类中可以含有多个抽象方法,不能包含已实现的方法
B.实现一个接口,但没有完全实现接口中包含的抽象方法的类是抽象类
C.继承一个抽象类,但没有完全实现父类包含的抽象方法的类是抽象类
D.一个类可以继承抽象类的同时实现一个或多个接口
11、异常框架的最顶层为?
(A)
A.ThrowableB.ExceptionC.Error
12、捕获异常用的关键字为?
(B)
A.ThrowB.catchC.Exception
13、throw和throws的说法不正确的是?
(C)
A.throw是方法内抛出异常B.throws是方法声明是抛出异常C.throw可以抛出多个异常
14、自定义异常需要继承哪个类?
(A)
A.ExceptionB.ErrorC.Throwable
15、所有异常类的父类是______(A)。
A.ThrowableB.ErrorC.ExceptionD.RuntimeException
16、下面属于非检查型异常的类是______(B)。
A.ClassNotFoundExceptionB.NullPointerExceptionC.ExceptionIOException
17、能单独和finally语句一起使用的块是______。
(A)
A.tryB.catchC.throwD.throws
18、用来手动抛出异常的关键字是______。
(D)
A.catchB.throwsC.popD.throw
19、下列关于异常说法错误的是________。
(C)
A.一个try后面可以跟多个catch块
B.try后面可以没有catch块
C.try可以单独使用,后面可以没有catch、finally部分
D.finally块都会被执行,即使在try或catch块中遇到return,也会被执行
20、下列说法错误的是________。
(B)
A.自定义异常类都继承Exception或RuntimeException类
B.使用throws声明抛出一个异常序列,使用分号“;”隔开
C.使用throw抛出一个异常对象
D.异常分为检查型异常和非检查型异常两种
第8章泛型和集合
1、泛型的描述正确的是?
(B)
A.泛型也需要进行强制类型转换B.泛型可以自动进行数据类型转换
2、Java集合分为哪三大类(ABC)
A.SetB.ListC.MapD.collection
3、List中的对象是无序的,这种说法正确吗?
(B)
A.正确B.错误
4、Java集合中的量大体系分别是(AD)
A.collectionB.ListC.SetD.Map
5、Java集合常用的工具类有(AD)
A.CollectionsB.CollectionC.ArrayD.Arrays
6、下面______类不属于是Collection集合体系的。
(D)
A.ArrayListB.LinkedListC.TreeSetD.HashMap
7、创建一个ArrayList集合实例,该集合中只能存放String类型数据,下列______代码是正确的。
(B)
A.ArrayListmyList=newArrayList()
B.ArrayListmyList=newArrayList;<>()
C.ArrayList<>myList=newArrayList()
D.ArrayList<>myList=newList<>()
8、下面集合类能够实现“FIFO”特点的是______。
(A)
A.LinkedListB.StackC.TreeSetD.HashMap
9、在Java中LinkedList类和ArrayList类同属于集合框架类,下列_____选项中的方法是这两个类都有的。
(D)
A.addFirst(Objecto)B.getFirst()C.removeFirst()D.add(Objecto)
10、关于集合框架特征,说法不正确的是_______。
(A)
A.Map集合中的键对象不允许重复、B.有序List集合中的元素允许重复、
C.有序Set集合中的元素不允许重复D.无序Collection集合中的元素允许重复、无序
11、下列不是Map接口中的方法的是__________。
(B)
A.clear()B.peek()C.get(Objectkey)D.remove(Objectkey)
12、下列关于Iterator接口说法错误的是_________。
(C)
A.Iterator接口是Collection接口的父接口从JDK5开始,
B.所有实现了Iterable的集合类都是可迭代的,
C.都支持foreach循环遍历
D.可以通过hasNext()方法获取下一个元素remove()方法移除迭代器返回的最后一个元素
期末考试题:
一、选择题
1.Java开发工具包为(C)
A.JREB.SDKC.JDKD.RunTime
2.Java的集成开发环境为(A)
A.EclipseB.SqlC.DevelopterD.JDKRunTime
3.Java编译后的文件是一个以()为后缀的文件(B)
A.javaB.classC.docD.exe
4.下列java标识符,错误的是(D)
A._sys_varlB.$changeC.User_nameD.1_file
5.下列不属于简单数据类型的是(B)
A.整数类型B.字符串类型C.符点数类型D.布尔类型
6.下列声明和赋值语句错误的是
A.doublew=3.1415B.Stringstrl=”bye”C.floatz=6.74567D.booleantruth=true
7.下列不属于整型变量的类型是(C)
A.byteB.shortC.floatD.long
8