一、选择题(2分/题)
注意:在每小题的备选答案中选出正确答案,答案为1或多个。多选错选少选均不给分
1、给出如下代码:
class Test{
private int m;
public static void fun() {
// some code...
}
}
如何使成员变量m 被函数fun()直接访问? C
A、将private int m 改为protected int m
B、将private int m 改为 public int m
C、将private int m 改为 static int m
D、将private int m 改为 int m
2、下面哪几个函数是public void example(){...}的重载函数?AD
A、 public void example( int m){...}
B、public int example(){...}
C、public void example2(){...}
D、 public int example ( int m, float f){...}
3、文件类File 可以用于 A B D
A.获取文件大小
B.是文件夹可以获取子文件列表
C.读取文件内容
D.创建或删除文件
4、已知如下定义:String s = "story";
下面哪个表达式是合法的?A D
A、 s += "books";
B、char c = s[1];
C、int len = s.length;
D、String t = s.toLowerCase();
5、Java中能表示日期的类型有? B C
A、 String B、Date C、Calendar D、Exception
6、如下哪些字串符合Java的语法规范? A E
A、fieldname
B、super
C、3number
D、#number
E、$number
7、 整型数据类型中,需要内存空间最少的是:D
A.short
B.int
C.long
D.byte
8、java中能操作集合的工具类与操作数组的工具类分别是?A C
A、Collections.
B、Collection.
C、Arrays.
D、HashMap.
9、适合频繁修改内容的List集合是?
A、ArrayList
B、Vector
C、LinkedList
D、HashMap.
10 已知如下代码:
switch (m)
{
case 0: System.out.println("Condition 0");
case 1: System.out.println("Condition 1");
case 2: System.out.println("Condition 2");
case 3: System.out.println("Condition 3");break;
default: System.out.println("Other Condition");
}
当m 的值什么时能输出"Condition 2"? ABC
A、 0 B、1 C、2 D、3 E、4
11 如果类中的成员变量可以被同一包访问,则使用如下哪个修饰符? B C D
A、 private B、public C、protected D、no modifier E、final
121 String中截取字符串的方法是? C
A、 length() B、replace() C、substring() D.trim()
13、已知如下类定义:
class Base {
public Base (){ //... }
public Base ( int m ){ //... }
protected void fun( int n ){ //... }
}
public class Child extends Base{
// member methods
}
如下哪句可以正确地加入子类中?C D
A、 private void fun( int n ){ //...}
B、void fun ( int n ){ //... }
C、protected void fun ( int n ) { //... }
D、public void fun ( int n ) { //... }
14、下列包装类对象创建正确的是 A B
A Integer i =100;
B Boolean b = new Boolean(“true”);
C Character c = new Character(“A”);
D Float f = new Float(“3.14a”);
15、Set集合的特点是 B C
A.可以包含重复元素
B.没有索引
C.不能包含重复元素
D.元素由键+值组成
16、下面的是关于类及其修饰符的一些描述,不正确的是(C )
A、abstract类只能用来派生子类,不能用来创建abstract类的对象
B、abstract不能与final同时修饰一个类
C、final类不但可以用来派生子类,也可以用来创建final类的对象
D、abstract方法必须在abstract类中声明,
但abstract类定义中可以没有abstract方法
17、运行下列程序,结果是 C
class Base{
public static void print(){
System.out.println("Base");
}
}
class Inherit extends Base{
public static void print(){
System.out.println("Inherit");
}
}
public class Print{
public static void main(String[] args){
Base base=new Base();
Base in=new Inherit();
base.print();
in.print();
}
}
A:Base,Base B:Inherit,Inherit C:Base,Inherit D:Compilation error
18、以下属于字符流的是: B C
A FileInputStream
B FileReader
C PrintWriter
D ObjectInputStream
19、指出下列程序的运行结果:D
public class Static{
static{
int x=5;
}
static int x,y;
public static void main(String args[]){
x--;
myMethod();
System.out.println(x+y+ ++x);
}
public static void myMethod(){
y=x++ + ++x;
}
}
A compiletime error
B prints:1
C prints:2
D prints:3
E prints:7
F prints:8
20.Set与list都可以使用那些方式循环 B C
A. for循环+get(index)方法
B. Foreach 语句
C Iterator 迭代器
D while循环+get(index)方法
二、填空题(2分/空)
1. Iterator 迭代器中判断有无下一个元素的方法是_hasNext()_____,取出下一个元素的方法是___next()_____
2.String与Data类做日期格式化转换的类是_SimpleDateFormat_,日期格式需要表示为”2019年03月20日 星期三” 则对应的日期转换格式为__yyyy年MM月dd日 E________
3. Date构造函数中设置年份为2021年实际应该填写的是__2021-1900______。
4. 缓冲输出字符流是_BufferedWriter_____,能读取出对象的输入流是_ObjectInputStream________.
5. Collection的两个子接口分别是__List____ 和 ___Set_____
6.HashMap中取出所有的值的方法是_values()__ 取出所有键的方法是__keySet()______
7.LinkedList中每个元素为一个Node其中包含三个组成部分分别是_上一个元素的地址_,__本元素地址____,__下一个元素地址____
8.面向对象三大特征__封装___,_ 继承_____,_ 多态____
9.ArrayList内实际保存元素的是一个__对象数组 Object[]____
10.两个同类对象能比较大小必须实现_Comparable_接口,能在IO中进行输入输出必须实现__序列化__接口(不记得单词 可以写中文类名)
三 问答题
1.简述所学的集合中集合类及各自特点(20分)
List 可以重复 有序集合
ArrayList(动态数组,集合元素放置在一起 适合循环遍历 不适合添加删除元素)
LinkedList(链表集合,每个元素都有上下元素的指针,不适合循环遍历,适合添加删除元素)
Vector(本质和ArrayList相同 ,有线程安全机制)
Set 不能重复 无序集合
HashSet 由元素的hashcode值决定在集合内的位置
TreeSet 会对元素进行排序,要求元素必须类型相同且实现Comparable接口
Map 键 值 对集合,键不能重复 无序,值可以重复
HashMap 由key的hashCode值决定位置
TreeMap 由key的大小进行排序摆放,要求key必须类型相同且实现Comparable接口
Hashtable 本质和HashMap类似 加上了线程安全特性
2.编写学生类,包含属性 name sex score
a要求实现当三个属性都相同时,
两个学生类对象equals为true(5分)
B.要求两个对象能比较大小,
先比较score ,再比较sex,最后比较name(5分)
3.谈谈 String ,StringBuffer,StrringBuilder的异同(10分)