题库汇总目录 https://www.jianshu.com/p/172d63e0744a
Android大厂高频面试题目,所有题目都是来自于一线大厂真题,题目还会继续填充,答案正在完善中....
一、Android基础篇
二、Java基础篇
三、数据结构篇
四、高并发篇
五、性能优化篇
六、计算机网络篇
七、设计模式篇
八、编程/算法篇
九、开源代码篇
十、其他技术篇
十一、项目篇
十二、开放性题目篇
十三、HR篇
计算机网络篇
- http1.0和2.0之前的区别
- https的加密原理
- https抓包原理
- 如何防止抓包
- 对称加密和非对称加密的区别
- md5和sha1区别
- http协议的组成
- .http请求头中都有哪些参数
- 简单说下网络请求的整个过程。
- 发起一个网络请求,经历哪些步骤:
1.通过DNS协议获取URL对应的IP地址
2.浏览器与服务器建立TCP连接
3.客户端发送HTTP请求
4.服务器收到请求后,执行响应的业务逻辑
5.服务器发送响应
6.解析HTML显示页面
7.断开连接(四次挥手) - http协议几次握手,几次挥手?
- TPC为什么需要三次握手
- UDP和TCP的区别
TCP | UDP | |
---|---|---|
链接类型 | 面向连接 | 面向非连接 |
传输可靠性 | 可靠 | 不可靠 |
应用场合 | 少量数据 | 大量数据 |
速度 | 慢 | 快 |
- http和https的区别:
1.https协议需要到ca申请证书
2.http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3.http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4.http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。 - https的请求流程
1.客户使用https的URL访问Web服务器,要求与Web服务器建立SSL连接。
2.Web服务器收到客户端请求后,会将网站的证书信息(证书中包含公钥)传送一份给客户端。
3.客户端的浏览器与Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。
4.客户端的浏览器根据双方同意的安全等级,建立会话密钥,然后利用网站的公钥将会话密钥加密,并传送给网站。
5.Web服务器利用自己的私钥解密出会话密钥。
6.Web服务器利用会话密钥加密与客户端之间的通信 - http1.0和2.0区别
1.HTTP/2采用二进制格式而非文本格式
2.HTTP/2是完全多路复用的,而非有序并阻塞的——只需一个连接即可实现并行
3.使用报头压缩,HTTP/2降低了开销
4.HTTP/2让服务器可以将响应主动“推送”到客户端缓存中 - post和ger区别
1.POST先对GET安全一些
2.GET提交的数据大小有限制,POST没有
3.GET能被缓存,POST不能
4.GET只允许ASCII字符,POST没有限制
5.POST可以提交多种数据类型(multipart/form-data, text/plain, text/html, application/xml, application/json) - tcp链接数据包什么时候发出,数据包间时间间隔
- 网络优化有啥方案