面试常用问题

2697次阅读  |  发布于5年以前
  1. 垃圾回收机制。。。(主要从下面几方面解答 GC原理、最好画图解释一下年轻代(Eden区和Survival区)、年老代、比例分配及为啥要这样分代回收)
  2. 对象分配问题,堆栈里的问题,详细的会问道方法区、堆、程序计数器、本地方法栈、虚拟机栈,问题入口从String a,new String("")开始
  3. 关键字,private protected public static final 组合着问
  4. Object类里面有哪几种方法,作用
  5. equals 和 hashCode方法,重写equals的原则()
  6. 向上转型
  7. Java引用类型(强引用,软引用,弱引用,虚引用)
  8. 线程相关的,主要是volitate,synchorized,wait(),notify(),notifyAll(),join()
  9. Exception和Error
  10. 反射的用途
  11. HashMap实现原理(数组+链表),查找数据的时间复杂度
  12. List有哪些子类,各有什么区别
  13. NIO相关,缓冲区、通道、selector。。。(不熟,面了这么多,挂在这里。其实主要是表现在同步阻塞和异步,传输方式不同。标准IO无法实现非阻塞模式、文件锁、读选择、分散聚集等)
  14. 内存泄露,举个例子
  15. OOM是怎么出现的,有哪几块JVM区域会产生OOM,如何解决(对于该问题,建议去《Java特种兵》的3.6章)
  16. Java里面的观察者模式实现
  17. 单例实现(我一般用enum写,不容易被挑毛病)
  18. 用Java模拟一个栈,并能够做到扩容,并且能有同步锁。(用数组实现)
  19. Java泛型机制,泛型机制的优点,以及类型变量

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8