秋招结束,已经获取京东,拼多多,OPPO,小米,华为,阿里Offer。这次不多说太多,分享下Java面试的一些高频问点面经,希望对还在找工作的朋友有所帮助!不要私藏哦,可以转发朋友圈让给身边的朋友参考参考哈哈哈哈!
计算机网络
这些问题是最常见,感觉基本上也就会问这些。
-
OIS参考模型,每一层涉及到了哪些协议,每一层负责了什么?
-
最重要的就是传输层,这一块一定要好好看
-
TCP的特点是什么?什么是窗口滑动协议,什么是快速重传,什么是拥塞避免,什么是慢启动?怎么做到可靠数据传输?
-
TCP的流量控制是什么?如果RcvWindow=0应该怎么办?
-
有哪几种定时器?作用分别是什么?
-
TCP和UDP的区别?什么场景使用TCP,什么场景什么UDP?哪些应用层协议使用了TCP,哪些使用了UDP?UDP要实现可靠数据传输应该怎么做?
-
TCP的三次握手和四次挥手?为什么是三次,为什么是四次?为什么TCP采用随机初始序列号?客户端和服务器最多能发送和接收多少TCP连接数?(最后一个问的较少)
-
如果TCP连接的时候服务器发送的最后一个报文时,客户端挂了会怎样?那如果服务器宕机了,客户端怎么处理?
-
TIME_WAIT 和 CLOSE_WAIT 状态?TIME_WAIT 为什么需要保持 2MSL 这么长的时间?大量TIME_WAIT造成的影响?如何尽量处理 TIMEWAIT 过多?
-
TCP粘包(问的较少)
-
影响TCP 网络时延的因素
-
当你输入域名访问一个网站的时候,背后的过程是什么涉及到哪些协议?
-
什么是https协议?https协议用到了哪种密钥?
-
什么是有状态什么是无状态?
-
HTTP的八种请求?GET和POST的区别?
-
HTTP的一些常见的状态码要熟悉!重定向和转发的区别?
-
HTTP和HTTPS的区别?HTTP1.0和HTTP1.1的区别?
-
HTTPS的工作流程?
-
Cookie,Session,Token的区别
-
SSL加密的过程?延伸出对称加密和非对称加密的过程和区别
-
DNS协议!域名解析过程,递归查询和迭代查询的区别?
-
Ping命令的过程和ARP协议(这个做了解就好了)
操作系统
这个是比较惨的,但是一般问的不深。
-
进程和线程的区别是什么?进程和线程占有的资源是哪些?
-
操作系统创建进程的过程?进程的状态和控制原语?Java的Runnable对应着哪些操作系统状态?还有哪些控制函数像sleep,notify这些改成成什么状态了?
-
进程间通信!为什么需要进程间通信?