深圳科瑞技术社招Java开发工程师一面

面试前的准备:(根据招聘简章获取的)

技术要求:
  • Java数据结构、集合、IONIO等
  • 多线程编程、熟悉分布式缓存消息队列等机制
  • 熟悉JVM、内存模型、类以及性能优化
  • 开源框架:Spring、SpringMVC、MyBatis、Hibernate等
公司要求项目经验:MES、WMS、OA、ERP、PLM等系统之间的数据交互

  1. 说说JVM的主要组成部分以及作用?-----最好画个草图,各个阐述计数器、堆、栈、方法区、类加载子系统、执行引擎等作用……这个如果细究起来很复杂的,远不是所谓的背诵几个属于概念,就看面试官是怎么认定了,光是一个栈的细究就一大堆,线程栈,一个方法对应栈帧内存(局部变量表、动态链接、方法出口……)……
  2. 什么是双亲委派模型?------一个类加载器受到类加载的命令时,首先会将请求委派给父类加载器去加载,因此根据层层传递,最终会被传入到顶层的启动类加载器(Bootstrap ClassLoader)只有到父类加载器无法完成这个类的加载请求时,子类加载器才会加载。
  3. 类加载执行原理,以及类加载器?-----也就是类加载机制,虚拟机将class文件加载到内存,并对数据校验、解析、初始化,最终形成可以被虚拟机直接使用的Java类型。(加载会有一个顺序,最好画个草图分别阐述各个分段过程……)类加载器有启动类加载器加载的是JDK类库lib下的,扩展类加载器……,应用程序加载器……,线程上下文类加载器……,自定义类加载器……
  4. 简单阐述下垃圾回收机制------分代回收,内存区域被划分不同的时代,对象根据存活的时间被保存在对应时代的区域中,一般分为年轻代、年老代、永久代。从年轻代分配内存,当对象存活时间足够长就会被复制到老年代,对于不同的时代使用不同的垃圾回收算法。
  5. 如果判断对象是否可以被回收?-----实际就是判断对象的存活,引用计数法  对象可达性
  6. JVM有哪些垃圾回收算法?------垃圾-标记   垃圾-复制   垃圾-整理   分代回收……
  7. 新生代垃圾回收器和老年代垃圾回收器有哪些?以及它们异同
  8. JVM调优工具?以及调优参数
  9. 分代垃圾回收器的工作原理
  10. Java中有哪些锁?以及锁的状态?---------自旋锁……,偏向锁……,轻量锁……。状态:无锁,偏向锁,轻量级锁,重量级锁,只可升不可降……
  11. 死锁和产生死锁的原因和解决方法?--------所谓死锁就是多线程对一个资源的僵持,通俗来讲每个线程,我没拿到资源我也不会放弃手中的资源,每个都这样想,没有一个先放手打破这种僵持。至于理论上那些文绉绉的几个条件,我也没兴趣记忆……。
  12. BIO/NIO/AIO有什么区别?----BIO阻塞服务端循环监听客户端的连接,每接受到一个请求就创建一个线程,未接收到连接就会一直阻塞,所以会导致线程数膨胀JVM服务压力过大导致宕机。NIO引入了缓冲区线程无需阻塞地等待IO事件,但又出现了不断轮询客户端。AIO异步非阻塞的引入……具体的自己具体说。
  13. Collection和Collections有什么区别
  14. List、Set、Map之间的区别
  15. HashMap和Hashtable区别
  16. HashMap和TreeMap的区别
  17. ArrayList和Vector区别
  18. sleep和wait的区别?---------------------以上对于Java封装的方法类……是常见的面试聊天,所以要进场对易混淆的方法类做对比地理解。
  19. 创建线程池以及线程池的状态
  20. ThreadLocal的原理和使用场景
  21. Synchronized底层实现原理以及和volatile的区别
  22. Synchronized和ReentrantLock的理解--------最明显的就是一个是关键字、另一个是类,类的扩展和灵活更胜一筹,类中的方法可以设置等待时间,锁信息……
总结:一面主要还是以JVM底层一些东西聊……主要难点也是JVM展开的……

特别是画个草图来阐述,而且如何分析GC日志、如何查看一个程序的内部运行时的状态……模拟一个程序中线程不断循环创建对象,但对象又一直存活无法回收,通过一个JDK的工具jvisualvm清晰直观的查看底层动态的Old/Eden/S0/S1等,各个变化状态……直到内存溢出。
对class文件的理解,通过javap对字节码文件进行反汇编(参数-c)结合jvm手册阐述数据在jvm不同区的变化……
#社招##Java工程师##面经#
全部评论
感谢分享!欢迎参加过社招的牛友分享面经,领取京东卡~~ -------------------- 活动:社招面经征集|参加过社招的牛友,来发面经吧,拿京东卡
点赞 回复 分享
发布于 2019-11-01 11:27
有深科瑞机械设计岗位的兄弟吗
点赞 回复 分享
发布于 2022-03-04 13:25

相关推荐

11-06 15:41
门头沟学院 Java
等大佬释放捡剩菜,还有机会吗
普通上班族1:0offer+0池子。
点赞 评论 收藏
分享
6 36 评论
分享
牛客网
牛客企业服务