JAVA面经---23届秋招面经总结----(三)

JAVA面经—23届秋招面经总结----(三)

沃尔沃 9.18一面(能源优化测试工程师):

1.英文自我介绍
2.英文文献翻译及对于文章的看法
  • 内容关于负载均衡算法。(不太了解)
3.空指针异常怎么排查?
  • 赋值对象未实例化,造成空指针异常;

  • 值为空,未经判断直接赋给对象,造成空指针异常。

4.OutOfMemory异常怎么排查?
  • 调用jstat 查看监控 JVM 的内存和 GC 情况,先观察问题大概出在什么区域;
  • 使用 MAT 工具载入到 dump 文件,分析大对象的占用情况,比如 HashMap 做缓存未清理,时间长了就会内存溢出,可以把改为弱引用 。
5.String对象怎么创建存放?
  • 使用String a = “aaa” ;,程序运行时会在常量池中查找”aaa”字符串,若没有,会将”aaa”字符串放进常量池,再将其地址赋给a;若有,将找到的”aaa”字符串的地址赋给a。
  • 使用String b = new String(“aaa”);`,程序会在堆内存中开辟一片新空间存放新对象,同时会将”aaa”字符串放入常量池,相当于创建了两个对象,无论常量池中有没有”aaa”字符串,程序都会在堆内存中开辟一片新空间存放新对象。
6.GC 回收机制介绍
  • java中有四种垃圾回收算法,分别是标记清除法、标记整理法、复制算法、分代收集算法。
  • 主要对分代收集算法进行了详细地描述,分代即分为:Young区和Old区,Young区中的Elden区满时,触发MinorGC;Old区满时,触发FullGC。
7.TCP与UDP区别、以及分别的适应场景

迭代器,即接口Iterator。
通过两个方法来遍历集合:hasNext();next();
使用Iterator,可以遍历所有集合,如Map,List,Set;但只能在向前方向上遍历集合中的元素。
(扩展:使用ListIterator,只能遍历List实现的对象,但可以向前和向后遍历集合中的元素。)

8.TCP三次握手阶段传递的消息是什么
  • 第一次客户端请求建立连接,向服务端发送一个同步报文SYN=1
  • 第二次握手:服务端收到连接请求报文后,如果同意建立连接,则向客户端发送同步确认报文**(SYN=1,ACK=1)**;
  • 第三次握手:客户端收到服务端的确认后,向服务端发送一个确认报文ACK=1
    第三次握手是可以携带数据的,前两次握手是不可以携带数据的。
9.手撕:输出字符串中的无重复的第一个字符,最后问算法的时间复杂度与空间复杂度。

一道简单题,卡半天,很尴尬。

10.有无汽车公司的相关工作经验?

11.什么时候能来实习?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值