TP-link杭州软开java社招一面
开局先说一下看了我简历,准备问我网络、数据结构算法、java 方面的问题,
TCP 和 UDP 区别
(可靠连接、拥塞控制、流量控制、头部段大小、socket 端对端)
可靠连接怎么保证(三次握手、确认机制、发送接收窗口)
OSI 自下而上七层,TCP/IP 参考模型四层。
往url 发送一个请求,经历了哪些过程(缓存-DNS-缓存-建立连接(忘说了)-请求响应)
进一步问请求过程使用了哪些协议
滑动窗口(后退 N 步和选择重传,围绕发送窗口和接收窗口拿手比划着讲了一下)
栈和队列的区别
用两个栈实现队列
垃圾回收机制(特意问了一下想听哪些,结果说就想听个总体的,就围绕 eden,survivor,old
讲了一下,说明了一下各自使用的方式就过了)
进程间通信的方式(报菜名,管道 fifo、消息队列、信号量共享内存,各自简单介绍了一下)
JAVA 如何解决并发问题
session 和 cookie 的区别,登录信息放在 session 还是 cookie 中,为什么刷新网页登录状态还在,关闭浏览器就要重新登录。
如何使用多线程,为什么还需要继承 Thread 类的方式去实现多线程。CAS 循环性能开销大如何解决。
为什么不用 DFS 去实现最短路径算法。
SQL 注入是个啥
HashMap底层结构,为什么是红黑树
HashMap和HashTable的区别
序列化与反序列化
volatile关键字
线程有几种状态,各个状态之间怎么转换的
线程池的七大参数,任务来了,线程池的过程
#TP-LINK##java工程师##社招##面经#