从网上找到一份人人网 JAVA 的笔试题,做了一下,受益匪浅,贴出来,个人水平有限,欢迎各位留言讨论
JAVA 笔试题【填空题】java 面对对象的三大特性是:_______,_______,_______
答:封装,继承,多态
sleep()和 wait()的区别是___________________________
答:(1)sleep()不释放对象锁,wait()释放对象锁
(2)sleep()可以在时间未届时被打断,抛出异常,所以需要捕获异常,wait 不需要捕获异常
(3)sleep()是 Thread 类的方法,wait()是 Object 类的方法
一个类被 JVM 回收的标志是_______________________
答:类未被其他的活动类引用
重写 JAVA equals 方法,需要同时重写:_____________
答:hashCode 方法
这是 JAVA 的常规约定,假如不重写 hashCode,使用HashMap,HashSet 等类时会出现错误
调用 equals()方法比较两个对象的时候,编 译 器 会 自 动 调 用 hashCode() 来 比 较 两 个 对 象 是 否 产 生 相 同 的 整 数 结果
equals() 返 回 true, 则 hashCode() 必 返 回 true
equals() 返 回 false, 则hashCode()必返回 false
那么重写 equals()方法,肯定必须重写 hashCode 方法来保证两者的同步
String, StringBuilder, StringBuffer 的区别:____________
答:String 保存字符串常量,字符串的每次变化都会产生一个新的字符串对象
StringBuilder 和 StringBuffer 都是可以变化而不产生新的对