(单选题) 1、如果子类要调用父类的构造函数,则通过super()调用来实现。
A 正确
B 错误
(单选题) 2、ArrayList和LinkList的描述,下面说法错误的是?
A LinkedeList和ArrayList都实现了List接口
B ArrayList是可改变大小的数组,而LinkedList是双向链接串列
C LinkedList不支持高效的随机元素访问
D 在LinkedList的中间插入或删除一个元素意味着这个列表中剩余的元素都会被移动;而在ArrayList的中间插入或删除一个元素的开销是固定的
(单选题)3、假设有以下代码
String s=”hello”;
String t=”hello”;
Char c[] ={‘h’,’e’,’l’,’l’,’o’};
下列选项中返回false的语句是:
A s.equals(t);
B t.equals(c);
C s==t;
D t.equals(new String(“hello”));
(单选题)4、下列Java代码中的变量a、b、c分别在内存的____存储区存放。
class A {
private String a = “aa”;
public boolean methodB() {
String b = “bb”;
final String c = “cc”;
}
}
A 堆区、堆区、堆区
B 堆区、栈区、堆区
C 堆区、栈区、栈区
D 堆区、堆区、栈区
E 静态区、栈区、堆区
F 静态区、栈区、栈区
(不定项选择题)5、下面有关java的instanceof、?、&、&&说法正确的有?
A instanceof 可用来判断某个实例变量是否属于某种类的类型。
B "?:" 三目运算符
C &在逻辑运算中是非短路逻辑与,在位运算中是按位与
D && 逻辑运算:逻辑与
上期答案:
第1,谈谈final, finally, finalize的区别。
final修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。
finally再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。
finalize方法名。Java 技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。
第2,HashMap和Hashtable的区别。
都属于Map接口的类,实现了将惟一键映射到特定的值上。
HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。
Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap慢,因为它是同步的。
第2,Collection 和 Collections的区别。
Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。
Collection是个java.util下的接口,它是各种集合结构的父接口。
第4,GC是什么? 为什么要有GC? (基础)。
GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:
System.gc()
Runtime.getRuntime().gc()
第5,String s = new String("xyz");创建了几个String Object?
两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。
第6,short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
shorts1 = 1; s1 = s1 + 1;有错,s1是short型,s1+1是int型,不能显式转化为
short型。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确。