List,Set
是 Map 不是
8、ArrayList 和 Vector 的区别。
1>同步性:Vector 是线程安全的,也就是说是同步的,而 ArrayList 是线程序不安
全的,不是同步的 2>数据增长:当需要增长时,Vector 默认增长为原来一培,而
ArrayList 却是原来的一半
9、什么时候用 assert。
assertion(断言)在
§中是一种常用的调试方式,很多开发语言中都支持这
种机制。在实现中,assertion 就是在程序中的一条语句,它对一个 boolean 表达式进行
检查,一个正确程序必须保证这个 boolean 表达式的值为 true;如果该值为 false,说
明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion 用于保
证程序最基本、关键的正确性。assertion 检查通常在开发和
§时开启。为了提高性能,
在软件发布后,assertion 检查通常是关闭的。
10、GC
是什么? 为什么要有 GC?
GC 是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。
要请求垃圾收集,可以调用下面的方法之一:
1. System.gc()
2.
3. Runtime.getRuntime().gc()
11、String s = new String("xyz");创建了几个 String Object?
“
两个对象,一个是 xyx”
“
,一个是指向 xyx”的引用对象 s
12、.Math.round(11.5)
等於多少? Math.round(-11.5)等於多少?
Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;因为
返回最接近参数的 long
。通过加上 1/2 将该结果舍入为整数,取结果的基数并将其强制
转换为 long
类型。换句话说,结果等于以下表达式的值: (long)Math.floor(a + 0.5d)
13、short s1 = 1
; s1 = s1 + 1
;有什么错? short s1 = 1
; s1 += 1;有什么
错?
short s1 = 1
; s1 = s1 + 1
;错, short s1 = 1
; s1 += 1;对。对于 short s1
= 1
; s1 = s1 + 1;由于 s1+1 运算时会自动提升表达式的类型,所以结果是 int 型,
再赋值给 short 类型 s1 时,编译器将报告需要强制转换类型的错误。对于 short s1 =
1
; s1 += 1
;由于 += 是 java 语言规定的运算符,java 编译器会对它进行特殊处理,
因此可以正确编译。
14、sleep()
和 wait() 有什么区别?
sleep 是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给
其他线程,但是监控状态依然保持,到时后会自动恢复。调用 sleep 不会释放对象锁 。
wait 是 Object 类的方法,对此对象调用 wait 方法导致本线程放弃对象锁,进入等待此