面试题-Java API篇

  最近得空,就去一些招聘网站做了些面试题,为方便大家共同学习,Java API相关的就在这篇博客里记录一下,以后有空会持续更新,大家有更好的答案也可以留言告诉我。
面试题-Java算法篇 传送门
面试题-Android篇 传送门

1. HashMap和Hashtable的区别

  • Hashtable 继承自 Dictiionary 而 HashMap继承自AbstractMap。
  • HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。
  • Hashtable使用contains方法去查看是否包含某一对象,HashMap使用containsvalue和containsKey。
  • 最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步(Collections.synchronizedMap)。

2. Collection和Collections的区别

  Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式;
  Collections 是一个包装类。它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,服务于Java的Collection框架

3. sleep()和wait()有什么区别?

  sleep()方法是属于Thread类中的。而wait()方法是属于Object类中的。

  sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的过程中,线程不会释放对象锁。

  而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象调用notify()方法后本线程才进入对象锁定池准备获取对象锁进入运行状态。

版权声明:程序员胖胖胖虎阿 发表于 2022年10月12日 下午12:40。
转载请注明:面试题-Java API篇 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...