开场白
面试官很友好,先是自我介绍,面试官应该是做永劫无间手游的,刚好内测的时候玩了几局,简单聊了一下,然后开始正式面试了。
第一个问题,3次握手和4次挥手
- 回答:
- 三次握手:TCP 建立连接的过程,包括 SYN(同步)、SYN-ACK(同步-确认)、ACK (确认)三个步骤。
- 四次挥手:TCP 断开连接的过程,包括 FIN(结束)、ACK(接受)、FIN(结束)、ACK(接受) 四个步骤。
第二个问题,讲讲udp和tcp区别
- 回答:
- TCP:面向连接,提供可靠的数据传输,保证数据顺序和完整性,但速度较慢。
- UDP:无连接,提供不可靠的数据传输,不保证数据顺序和完整性,但速度较快。
第三关问题,延伸问题;你刚刚提到TCP和UDP头部大小不同,它们分别是什么
- TCP:头部较大(20字节),包含序列号、确认号、窗口大小等信息。
- UDP:头部较小(8字节),仅包含源端口、目的端口、长度和校验和。
第四个问题,讲讲JVM
JVM就是Java虚拟机
JVM就像是一个神奇的翻译官,它可以把Java代码转换成计算机能理解的语言。具体来说:
1. 当我们编写Java代码时,它会被编译成一种叫做字节码(Bytecode)的中间形式
- JVM会读取这些字节码,并在不同的操作系统上执行它们
- 这样,Java程序就可以"一次编写,到处运行"啦!
JVM的主要工作包括:
- 加载类文件
- 验证字节码
- 执行代码</