每天一套面试题Day36-八股高频(17)

链接题目来自牛客p8

我的每日一套面试题专栏,每天更新一起打卡

由于课设六级期末都要搞,加之以及背的需要复习,八股近一个月每天数量会视情况而定。

84.请你说说Java中重载和重写的区别。

alt 这里的参数列表不同指的是参数类型,数量,顺序(参数类型的顺序)至少有一项不同。

85.为什么需要四次挥手

四次挥手是由TCP连接的全双工特性和半关闭状态决定的。

  1. 全双工:连接有A->B和B->A两个独立通道,需要各自关闭。
  2. 核心过程:主动关闭方(如客户端)先发FIN关闭自己的发送通道;被动关闭方先回ACK确认,然后在自己数据发送完毕后,再发FIN关闭自己的发送通道;最后主动方回ACK确认。
  3. 为什么是四次:被动方的ACKFIN通常无法合并发送。因为ACK是协议栈立即回复的,而FIN需要等待应用层所有数据发送完毕,两者存在时间差,这就产生了“半关闭”状态。
  4. 对比握手:三次握手时,服务端的SYNACK都是针对连接建立的,可以同时发出,所以能合并。

86.UDP 和 TCP 的应用场景

牛客的图片 alt 由于TCP要做到可靠,有序号,超时重传,ACK,三次握手,四次挥手等,于是实时性不得不妥协。 所以可靠就选TCP,FTP文件传输协议,HTTP,HTTPS,实时就选UDP,比如语音视频游戏等低延时场景。 如果你既想要可靠又想要实时,那么UDP上层再封装,比如QUIC TCP的核心设计目标——提供一对一的、可靠的、基于连接的字节流服务——这个根本目标,同时决定了它必须要有连接建立/释放过程(握手挥手),并且天然无法支持广播/多播。

#面试真题#
每日一套面试真题 文章被收录于专栏

记录刷过的面试真题

全部评论
继续练!
点赞 回复 分享
发布于 12-25 16:34 湖南

相关推荐

12-24 20:44
武汉大学 Java
点赞 评论 收藏
分享
12-24 20:52
武汉大学 Java
点赞 评论 收藏
分享
12-10 08:46
门头沟学院 C++
写在前面:主包是研二下发现自己找工作不知道找什么样的,本身专业是地坑专业,因此急转嵌入式为第二年的秋招做准备。本身有点c/c++的基础,但是比较缺少嵌入式方面的基础,因此提前6个月为秋招做足准备。主包本身是选择RTOS和Linux双修,可以在秋招多几个方向选择,如果有自己擅长的小伙伴可以只选择一个猛攻。个人推荐本科生选择RTOS、硕士生选择Linux。(为什么不推荐本科生选择Linux呢,因为Linux会卡学历,RTOS是对本科生来说最优选)大致路线是:速通mcu、rtos基础教程(第1个月) —Linux驱动、应用开发基础教程 (第2个月 — 做个比较全面的基础型项目(第3个月) — 找2段相关的嵌入式实习(第2-6个月) — 决战秋招。中间一直保持着刷hot100的习惯,以解决手撕问题。1️⃣第一个月mcu+rtos:首先选择b站播放量高点以及短一些的课程、资料同时学习,以基础为主,更重要的是对嵌入式方向有个基础的认知。(关于b站教程方面,个人没有特别推荐某一个,我看过几个其实大差不差,每个点击量高的都讲的比较全面,选择一个自己喜欢的即可,推荐从HAL库学起)要点:记住做足笔记,实习/秋招面试注重基础,并非花里胡哨的项目(但是也需要一个拿得出手的项目),基础的知识主要从前期学习打好框架。如果自己的c/c++的基础不好的话,也可以先从语言方面进行打磨,路线也是从b站视频学起!2️⃣第二个月Linux:也是从b站播放量较高的几个视频开始学起,主要是驱动与应用方向,要点与RTOS相同,要做好笔记!!3️⃣项目学习:每个课程都有自己附带的小项目,可以在实习前对其中一个项目进行打磨(不要直接照抄!!这种项目都是烂大街的)。接下来对项目进行修改(比如多加个功能,优化源码和八股里的知识结合),这种都可以进行AI赋能,让AI帮你想个点子。写在最后:实习和秋招来说,大厂都注重基础,因此对很多基础型的八股要了如指掌,但是也不能忽视项目,有一个吸引眼球的项目才会让你的简历被面试官发现。下一期准备分享实习/秋招经验、刷题经验,解决评论区常见问题~
点赞 评论 收藏
分享
评论
2
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务