1.以下哪个方法可以通过StringBuffer对象追加字符串?
A.into()
B.append()
C.insert()
D.add()
答案:B
2.在Java中,负责对字节代码解释执行的是?
A.应用服务器
B.编译器
C.JVM虚拟机
D.垃圾回收器
答案:C
3.在JAVA的异常处理模型中,能单独和finally语句一起使用的是?
A.catch
B.throw
C.throws
D.try
答案:D
4.下列关于普通方法完整的定义格式,正确的是?
A.public m(){}
B.public int m(){return 1.0;}
C.public void static m(){}
D.public static void m(){}
答案:D
5.下列哪项是Javadoc文档注释?
A./每天都认真学Java的我真优秀/
B.//每天都认真学Java的我真优秀
C.每天都认真学Java的我真优秀
D.每天都认真学Java的我真优秀
答案:C
6.在Java中,以下描述错误的是?
A.Java程序需要先编译后运行
B.以". class"为后缀的是编译后的文件
C.以". java"为后缀的是编译前的源文件
D.以". class"为后缀的是源文件
答案:D
7.下列关于基本类型的字面值描述错误的是?
A.整数字面值是int类型,浮点数的字面值是double类型
B.2进制的前缀是0b
C.long/float/double这3种类型有字面值后缀,分别是L/F/D
D.byte,short,char三种比int小的整数不可以用范围内的值直接赋值
答案:D
8.Java源文件拓展名是?
A.Java源文件拓展名为.jpg
B.Java源文件拓展名为.class
C.Java源文件拓展名为.java
D.Java源文件拓展名为.html
答案:C
9.定义变量byte a = (byte)128,输出a,结果为?
A.127
B.0
C.-128
D.128
答案:C
10.定义数组int[] a = new int[5],以下哪项可以正确赋值?
A.a[5] = 0
B.a[5] = 5;
C.a[4] = 5;
D.a[4] = 0
答案:C
11.以下哪个关键字是代表当前对象的引用?
A.super
B.new
C.this
D.static
答案:C
12.对于HashMap集合说法正确的是?
A.底层是数组结构
B.不可以存储null值和null键
C.底层是链表结构
D.可以存储null值和null键
答案:D
13.char类型的取值范围是?
A.-256 … 255
B.-128 … 127
C.0 … 65535
D.0 … 32767
答案:C
14.下列那条语句能编译通过?
A.int int = 11;
B.float float=”3.14”;
C.int i= 1.1;
D.String String=”String”;
答案:D
15.下面有关for循环的描述正确的是?
A.for循环体语句中,可以包含多条语句,但要用大括号括起来
B.for循环只能用于循环次数已经确定的情况
C.在for循环中,不能使用break语句跳出循环
D.for循环是先执行循环体语句,后进行条件判断
答案:A
16.在Java中,下列语句不能通过编译的有?
A.float f = 5 + 5.5F;
B.int a =‘a’+ 5;
C.int a = “join”+3;
D.String s = “join”+ 3;
答案:C
17.下列哪个关键字表示一个对象或者变量一旦赋值就不能修改?
A.static
B.final
C.goto
D.extends
答案:B
18.下列那一个不属于java的基本数据类型?
A.byte
B.int
C.String
D.float
答案:C
19.下列说法正确的是?
A.JAVA程序的main方法必须写在类里面
B.一个JAVA文件可以有多个main方法
C.JAVA程序中类名必须与文件名一样
D.JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来
答案:A
20.下列关于abstract,说法错误的是?
A.abstract类可以创建对象
B.abstract类的子类也可以是抽象类
C.abstract类中可以没有抽象方法
D.abstract类可以有构造方法
答案:A
21.在ArrayList结构中,类fruitTypeList的哪条语句可以判断列表中是否存在字符串“葡萄”?
A.fruitTypeList.add(“葡萄”);
B.fruitTypeList.get(“葡萄”);
C.fruitTypeList.remove(“葡萄”);
D.fruitTypeList.contains(“葡萄”);
答案:D
22.ArrayList类的底层数据结构是?
A.红黑树结构
B.哈希表结构
C.链表结构
D.数组结构
答案:D
23.下面描述方法重写错误的是?
A.子类方法的权限必须大于等于父类的权限
B.父类中被private权限修饰符的方法可以被子类重写
C.子类重写接口中的抽象方法,子类的方法权限必须是public的
D.要有子类继承或实现
答案:B
24.下列哪条语句可以在控制台正常显示消息?
A.system.out.println(“Java大数据欢迎你!”);
B.System.out.println(“Java大数据欢迎你!”);
C.System.out.println(Java大数据欢迎你!);
D.System.Out.Println(“Java大数据欢迎你!”);
答案:B
25.下列有关于变量的命名错误的是?
A.变量名字如果包含多个单词,也需要使用驼峰命名法
B.Java大小写敏感,命名变量时需要注意
C.首字母能以数字开头
D.可以由字母、数字、下划线(_)、美元符($)组成
答案:C
26.以下哪个不是Collection的子接口?
A.Queue
B.Map
C.Set
D.List
答案:B
27.下面哪个流类属于面向字符的输入流?
A.ObjectInputStream
B.FileInputStream
C.BufferedWriter
D.InputStreamReader
答案:D
28.下列哪个方法可以返回指定字符串的一部分?
A.Subing()
B.substring()
C.concat()
D.toString()
答案:B
29.定义变量int a = (7 > 1) ? 10 : 1,则a的值为?
A.10
B.1
C.7
D.11
答案:A
30.语句System.out.println(“abcd”.lastIndexOf(“bc”,1)); 的输出结果为?
A.0
B.2
C.-1
D.1
答案:D
31.下列代码输出结果是( )
int i = 10;
while ( i > 0 ){
i = i + 1;
if ( i = =10 ){
break;
}
}
A.while循环执行10次
B.死循环
C.循环一次都不执行
D.循环执行一次
答案:B
32.下列修饰符中哪个修饰符的范围最小?
A.默认修饰符
B.private
C.protected
D.public
答案:B
33.下列代码的运行结果是?
HashMap map = new HashMap();
map.put(“name”,null);
map.put(“name”,”xiyangyang”);
System.out.println(map.get(“name”));
A.运行时出现异常
B.xiyangyang
C.nullxiyangyang
D.null
答案:B
34.以下关于JDK,JRE,JVM的表述不正确的是?
A.JDK是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库
B.JRE是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库
C.JVM是整个java实现跨平台的最核心的部分,能够运行以Java语言写作的软件程序
D.JDK,JRE,JVM整体就是Java虚拟机
答案:D
35.试图编译运行下面的代码会发生什么情况?
public class MyClass{
static int i;
public static void main(String[] args){
System.out.println(i);
}
}
A.错误,变量i没有初始化
B.输出null
C.输出0
D.输出1
答案:C
36.关于数组的描述,正确的是?
A.数组的最大索引下标是数组的长度减1
B.通过数组名.length()能获得数组的长度
C.存储在数组当中的数据都属于同一数据类型
D.数组中的索引下标从1开始
答案:AC
数组的下标是从0开始的,而且获取数组的长度是数组名.length这是一个属性,不是方法,没有小括号
下列表达式运算结果为true的是?
A.( false ) || ( 5 < 2 )
B.( 5>3 ) ? !false:false
C.( true ) && ( 2 < 5 )
D.!( 2 < 5 )
答案:BC
下列关于方法的定义,正确的是?
A.static abstract void m()
B.private final void m()
C.public static final void m()
D.abstract final void m()
答案:BC
被abstract修饰的方法是抽象方法,抽象方法需要被子类继承,所以不能与final同用抽象的设计思想就是被子级实现,但是静态是不存在重写这样的概念的,所以不能与static同用
在JAVA中,下列哪些说法是正确的?
A.java源文件的扩展名为.java
B.写好的java源程序可以直接运行
C.编写的源程序必须先编译后才能运行
D.程序员可以读懂扩展名为.class的文件
答案:AC
写好的程序需要编译才能运行,字节码文件是给虚拟机JVM运行的,程序猿不可以直接看懂
下列关于static静态的描述,正确的是?
A.静态方法能够用类名直接调用
B.静态方法不能被覆盖
C.可以在不产生任何一个对象的情况下调用静态方法
D.静态方法中不能调用非静态方法
答案:ABCD
41.下列关于构造方法,说法正确的是?
A.构造方法名必须和类名一致
B.构造方法名可以和类名不一致
C.构造方法可以重载
D.构造方法必须有参数
答案:AC
42.关于构造方法,下列说法正确的是?
A.构造方法可以有返回值
B.一个类中可以有多个构造方法
C.构造方法可以有多个参数
D.每个类中都有至少一个构造方法
答案:BCD
43.关于接口和抽象类,下列说法正确的是?
A.抽象类可以有非抽象方法,接口中都是抽象方法
B.抽象类和接口都不能创建对象
C.一个类最多可以继承一个抽象类,但是可以实现多个接口
D.抽象类可以有构造方法,接口没有构造方法
答案:A,B,C,D
44.分支结构switch(expr),若jdk为jdk1.8,那么expr可以是以下哪种类型?
A.String
B.int
C.Integer
D.byte
答案:A,B,C,D
选择结构switch小括号中expr的类型可以是:byte short char int String enum(枚举类型)Integer类型也可以的原因是包装类型可以自动拆箱成基本类型
45.Java中的集合类包括ArrayList、LinkedList、HashMap等类,下列关于集合类 描述正确的是?
A.HashMap实现Map接口,它允许任何引用类型的键和值对象,并允许将null用作键或值
B.添加和删除元素时,ArrayList的表现更佳
C.ArrayList和LinkedList均实现了List接口
D.ArrayList的查询速度比LinkedList快
答案:ACD
46.final关键字可以修饰以下哪几个?
A.变量
B.类
C.常量
D.方法
答案:B,C,D
final不可以修饰变量,被final修饰的是常量
47.下列哪些属于面向对象的特征?
A.抽象
B.多态
C.继承
D.封装
答案:BCD
封装属于面向对象的特征之一,可以封装类组件、属性、方法继承属于面向对象的特征之一,子类继承父类后可以使用父类的所有非私有资源多态也属于面向对象的特征之一,父类引用指向子类对象,有向上造型和向下造型
48.下列方法重载说法正确的是?
A.如果同类中同名方法的参数个数不同,一定构成重载
B.方法的重载与方法的参数名无关,而与参数的个数&类型&顺序有关
C.方法的重载要求两个同名方法必须在同一个类中
D.如果方法的参数个数相同,需要逐一确认对应位置上参数的类型
答案:ABCD
49.下列关于JDK的说法正确的是?
A.开发一个Java程序,需要完整的JDK
B.运行一个Java程序,需要完整的JDK
C.以上说法都不对
D.运行一个Java程序,只需要JDK中的JRE
答案:AD
50.关于String类的indexOf说法不正确的是?
A.返回指定字符在字符串中第一次出现的索引
B.返回指定子字符串在字符串第一次出现的索引
C.返回指定字符在字符串中最后一次出现的索引
D.返回指定子字符串在此字符串最后一次出现的索引
答案:CD
注意indexOf()返回的是第一次出现的索引,而lastIndexOf()才是返回最后一次出现的索引