# CS-Wiki **Repository Path**: zhangcon/CS-Wiki ## Basic Information - **Project Name**: CS-Wiki - **Description**: 📙 致力打造完善的 Java 后端知识体系. Not only an Interview-Guide, but also a Learning-Direction. - **Primary Language**: Java - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: https://veal98.gitee.io/cs-wiki - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 554 - **Created**: 2022-02-19 - **Last Updated**: 2022-02-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

[![star](https://gitee.com/veal98/CS-Wiki/badge/star.svg?theme=dark)](https://gitee.com/veal98/CS-Wiki/stargazers) [![fork](https://gitee.com/veal98/CS-Wiki/badge/fork.svg?theme=dark)](https://gitee.com/veal98/CS-Wiki/members) [![GitHub stars](https://img.shields.io/github/stars/Veal98/CS-Wiki?logo=github)](https://github.com/Veal98/CS-Wiki/stargazers) [![GitHub forks](https://img.shields.io/github/forks/Veal98/CS-Wiki?logo=github)](https://github.com/Veal98/CS-Wiki/network) 公众号 配套教程 LeetCode-Offer
💡 **「关于」** - 🎓 博主东南大学研二在读,携程 Java 后台开发暑期实习生,热爱健身与篮球。本仓库于我考研时建立并维护至今两年有已,旨在用于记录学习过程中的所思所想,并力图构建一个完善的知识体系 - 🙏 由于本人水平有限,仓库中的知识点来自本人原创、视频、书籍、博客等,非原创均已标明出处(或在参考资料中列出),如有遗漏或发现文章错误及排版问题,请提 issue 或 PR - ⚡ [Gitee 仓库地址 (推荐)](https://gitee.com/veal98/CS-Wiki) | **[Gitee 在线阅读 (国内访问速度较快)](https://veal98.gitee.io/cs-wiki)** | [Github 仓库地址](https://github.com/Veal98/CS-Wiki) | [Github 在线阅读](https://veal98.github.io/CS-Wiki/) - 💬 文章会第一时间发布在公众号 **飞天小牛肉**,并且会在上面分享我的成长经历,下方扫码关注第一时间获取干货更新: - 🎁 学习小组:公众号后台回复 `学习小组` 免费进入学习小组,悄悄告诉你,已经有 100+ 小伙伴在这里啦,连续打卡还能拿红包! - 🚀 [大厂面试火箭计划](https://flying-veal.notion.site/CS-Wiki-ac77673444e447fd92f36c542fc31ec2):大厂面试真题汇总,提供背诵版 + 详解版 - ✍ 刷题网站 LeetCode-Offer:[LeetCode-Offer 仓库地址](https://gitee.com/veal98/LeetCode-Offer) | [LeetCode-Offer 在线阅读](https://veal98.github.io/LeetCode-Offer/),主要分享自己的算法模板和刷题顺序,由于正在准备校招,所以每天都会刷题 - 🦄 [「开源社区系统 Echo」Gitee 官方推荐项目,目前已累计 1.1k+ star](https://gitee.com/veal98/Echo),基于 SpringBoot + MyBatis + MySQL + Redis + Kafka + Elasticsearch ... 并提供详细的开发文档和配套教程。公众号后台回复 `Echo` 可以获取配套手把手教程 ## 🎨 走近小牛肉 --- ### 程序人生 - [程序人生 · 「日月既往,不可复追,暑期实习结束!」](走近小牛肉/程序人生/1-日月既往-不可复追-暑期实习结束.md) - [程序人生 · 「学习打卡拿红包」](走近小牛肉/程序人生/2-学习打卡拿红包.md) - [程序人生 · 「颜值党的生产力工具推荐」](走近小牛肉/程序人生/3-颜值党的生产力工具推荐.md) - [程序人生 · 「寒门博士的北大八年」](走近小牛肉/程序人生/4-寒门博士的北大八年.md) - [程序人生 · 「互联网校招指北」](走近小牛肉/程序人生/5-互联网校招指北.md) - [程序人生 · 「咱普通人努力的意义是什么」](走近小牛肉/程序人生/6-咱普通人努力的意义是什么.md) - [程序人生 · 「关于 Notion 的安利以及刷题模板的分享」](走近小牛肉/程序人生/7-关于 Notion 的安利以及刷题模板的分享.md) - [程序人生 · 「2021 最后一个月,心有所期,全力以赴」](走近小牛肉/程序人生/8-2021最后一个月-心有所期-全力以赴.md) - [程序人生 · 「国企还是互联网」](走近小牛肉/程序人生/9-国企还是互联网.md) - [程序人生 · 「互联网的尽头是元宇宙」](走近小牛肉/程序人生/10-互联网的尽头是元宇宙.md) ### 读书笔记 - [读书笔记 · 「万历十五年,到底意难平」](走近小牛肉/读书笔记/1-万历十五年,到底意难平.md) - [读书笔记 · 「呐喊」](代码之外/走近小牛肉/3-呐喊.md) - [读书笔记 · 「世上的人遍地都是,说的着的人千里难寻」](走近小牛肉/读书笔记/2-世上的人遍地都是-说的着的人千里难寻.md) - [读书笔记 · 「捐躯赴国难-视死忽如归」](走近小牛肉/读书笔记/4-捐躯赴国难-视死忽如归.md) ## 📑 计算机基础 --- ### 数据结构与算法 秉着先理论后刷题的理念,上线了一个刷题网站: - 仓库地址:[LeetCode-Offer: LeetCode + 剑指 Offer = 💰 (gitee.com)](https://gitee.com/veal98/LeetCode-Offer) - 在线观看:[LeetCode-Offer (veal98.github.io)](https://veal98.github.io/LeetCode-Offer/) ![](https://gitee.com/veal98/images/raw/master/img/20210925095905.png) 因为之前刷题总是找不到方法和体系,所以经常半途而废,开这个仓库的目的也是为了督促自己能够每日刷题,同时分享一下自己的刷题套路和经验,大伙儿可以跟我一起每天打卡,一起刷题进大厂! ### 计算机网络 - [计算机网络那些事儿 · 第 ⭐ 篇「如何构建你自己的计算机网络知识体系」](20-大厂面试火箭计划-计算机网络/90-如何构建你自己的计算机网络知识体系.md) - [计算机网络那些事儿 · 第 1 篇「一文读懂两台计算机之间是如何通信的」](20-大厂面试火箭计划-计算机网络/1-一文读懂两台计算机之间是如何通信的.md) - [计算机网络那些事儿 · 第 2 篇「网络基础扫盲 | 数据传输方式和交换方式」](20-大厂面试火箭计划-计算机网络/5-数据传输方式和交换方式.md) - [计算机网络那些事儿 · 第 3 篇「别再恐惧 IP 协议,万字长文 | 多图预警」](20-大厂面试火箭计划-计算机网络/10-别再恐惧IP协议.md) - [计算机网络那些事儿 · 第 4 篇「11-戏说不是胡说-高铁换乘之IP地址与MAC地址](20-大厂面试火箭计划-计算机网络/11-戏说不是胡说-高铁换乘之IP地址与MAC地址.md) - [计算机网络那些事儿 · 第 5 篇「5 幅图拿下 ARP 协议」](20-大厂面试火箭计划-计算机网络/12-几幅图拿下ARP协议.md) - [计算机网络那些事儿 · 第 6 篇「所谓 ICMP,不过将军与士卒而已」](20-大厂面试火箭计划-计算机网络/15-所谓ICMP-不过将军与士卒而已.md) - [计算机网络那些事儿 · 第 7 篇「关于 TCP 三次握手和四次挥手,满分回答在此」](20-大厂面试火箭计划-计算机网络/20-TCP三次握手四次挥手.md) - [计算机网络那些事儿 · 第 8 篇「原来 TCP 为了保证可靠传输做了这么多」](20-大厂面试火箭计划-计算机网络/30-原来TCP为了保证可靠传输做了这么多.md) - [计算机网络那些事儿 · 第 9 篇「超详细 DNS 协议解析」](20-大厂面试火箭计划-计算机网络/40-超详细DNS协议解析.md) - [计算机网络那些事儿 · 第 10 篇「为什么 DNS 协议使用 UDP?只使用了 UDP 吗?」](20-大厂面试火箭计划-计算机网络/42-为什么DNS协议使用UDP-真的只使用了UDP吗.md) - [计算机网络那些事儿 · 第 11 篇「HTTP 协议的前世今生」](20-大厂面试火箭计划-计算机网络/50-HTTP协议的前世今生.md) - [计算机网络那些事儿 · 第 12 篇「从崩溃的选课系统,论为什么更安全的 HTTPS 协议没有被全面采用」](20-大厂面试火箭计划-计算机网络/60-从崩溃的选课系统-论为什么更安全的HTTPS协议没有被全面采用.md) - [计算机网络那些事儿 · 第 13 篇「经典面试题:在浏览器地址栏输入一个 URL 后回车,背后发生了什么」](20-大厂面试火箭计划-计算机网络/70-经典面试题-在地址栏输入一个URL后回车-背后发生了什么.md) - [计算机网络那些事儿 · 第 14 篇「DHCP:IP 并非与生俱来」](20-大厂面试火箭计划-计算机网络/80-DHCP-IP并非与生俱来.md) ### 操作系统 - [操作系统那些事儿 · 第 1 篇「了解操作系统的那些事儿,从这篇文章开始」](30-大厂面试火箭计划-操作系统/1-了解操作系统的那些事儿-从这篇文章开始.md) - [操作系统那些事儿 · 第 2 篇「五分钟扫盲:进程与线程基础必知」](30-大厂面试火箭计划-操作系统/2-五分钟扫盲-进程与线程基础必知.md) - [操作系统那些事儿 · 第 3 篇「图解经典的进程调度算法」](30-大厂面试火箭计划-操作系统/3-图解经典的进程调度算法.md) - [操作系统那些事儿 · 第 4 篇「看完了进程同步与互斥机制,我终于彻底理解了 PV 操作」](30-大厂面试火箭计划-操作系统/4-看完了进程同步与互斥机制-我终于彻底理解了PV操作.md) - [操作系统那些事儿 · 第 5 篇「高频考点,六大进程通信机制总结」](30-大厂面试火箭计划-操作系统/5-高频考点-六大进程通信机制总结.md) - [操作系统那些事儿 · 第 6 篇「五分钟扫盲:程序在计算机中是如何运行起来的」](30-大厂面试火箭计划-操作系统/6-五分钟扫盲-程序在计算机中是如何运行起来的.md) - [操作系统那些事儿 · 第 7 篇「Shopee 送命题,进程切换为什么比线程切换慢](30-大厂面试火箭计划-操作系统/7-Shopee送命题-进程切换为什么比线程切换慢.md) - [操作系统那些事儿 · 第 8 篇「内存管理两部曲之物理内存管理」](30-大厂面试火箭计划-操作系统/8-内存管理两部曲之物理内存管理.md) - [操作系统那些事儿 · 第 9 篇「内存管理两部曲之虚拟内存管理」](30-大厂面试火箭计划-操作系统/9-内存管理两部曲之虚拟内存管理.md) ### 数据库 MySQL - [MySQL 必知必会 · 第 1 篇「一文读懂一条 SQL 查询语句是如何执行的」](40-大厂面试火箭计划-数据库/10-一条SQL查询语句是如何执行的.md) - [MySQL 必知必会 · 第 2 篇「Are You OK?主键、聚集索引、辅助索引」](40-大厂面试火箭计划-数据库/20-主键+聚集索引+辅助索引.md) - [MySQL 必知必会 · 第 3 篇「心态崩了,我怎么知道实际生产环境的 B+ 树索引有多少层?」](40-大厂面试火箭计划-数据库/25-B+树一般多少层.md) - [MySQL 必知必会 · 第 4 篇「InnoDB 关键特性:插入缓冲」](40-大厂面试火箭计划-数据库/40-InnoDB关键特性-插入缓冲.md) - [MySQL 必知必会 · 第 5 篇「阿里一面,唯一索引和普通索引如何选择」](40-大厂面试火箭计划-数据库/50-阿里一面-唯一索引和普通索引如何选择.md) - [MySQL 必知必会 · 第 6 篇「你的 SQL 还在回表查询吗?快给它安排上覆盖索引」](40-大厂面试火箭计划-数据库/60-你的SQL还在回表查询吗-快给它安排覆盖索引.md) - [MySQL 必知必会 · 第 7 篇「最左前缀有手就会,那索引下推呢?」](40-大厂面试火箭计划-数据库/70-最左前缀有手就会-那索引下推呢.md) - [MySQL 必知必会 · 第 8 篇「超长字符串字段,前缀索引两宗罪」](40-大厂面试火箭计划-数据库/75-超长字符串字段-前缀索引两宗罪.md) - [MySQL 必知必会 · 第 9 篇「三分钟入门 InnoDB 存储引擎中的表锁和行锁」](40-大厂面试火箭计划-数据库/80-三分钟入门InnoDB存储引擎中的表锁和行锁.md) - [MySQL 必知必会 · 第 10 篇「InnoDB 存储引擎中行锁的三种算法」](40-大厂面试火箭计划-数据库/82-InnoDB存储引擎中行锁的三种算法.md) - [MySQL 必知必会 · 第 11 篇「美团一面,四种事务隔离级别分别是怎么实现的」](40-大厂面试火箭计划-数据库/90-美团一面-四种事务隔离级别分别是怎么实现的.md) - [MySQL 必知必会 · 第 12 篇「幻读为什么会被 MySQL 单独拎出来解决」](40-大厂面试火箭计划-数据库/100-幻读为什么会被MySQL单独拎出来解决.md) - [MySQL 必知必会 · 第 13 篇「携程二面:讲讲 MySQL 中的 WAL 策略和 CheckPoint 技术」](40-大厂面试火箭计划-数据库/150-携程二面-讲讲MySQL中的WAL策略和CheckPoint技术.md) ## 🍵 Java --- ### 基础 - [Java 小白成长记 · 基础 · 第 1 篇「万物皆对象」](50-大厂面试火箭计划-Java基础/1-万物皆对象.md) - [Java 小白成长记 · 基础 · 第 2 篇「Hello World」](50-大厂面试火箭计划-Java基础/2-HelloWorld.md) - [Java 小白成长记 · 基础 · 第 3 篇「运算符与控制流」](50-大厂面试火箭计划-Java基础/3-运算符与控制流.md) - [Java 小白成长记 · 基础 · 第 4 篇「对象的初始化和清理」](50-大厂面试火箭计划-Java基础/4-对象初始化和清理.md) - [Java 小白成长记 · 基础 · 第 5 篇「Java 是如何实现封装的 — 图解访问修饰符」](50-大厂面试火箭计划-Java基础/5-Java是如何实现封装的-图解访问修饰符.md) - [Java 小白成长记 · 基础 · 第 6 篇「为什么说要慎用继承,优先使用组合」](50-大厂面试火箭计划-Java基础/6-为什么说要慎用继承-优先使用组合.md) - [Java 小白成长记 · 基础 · 第 7 篇「区分重载和重写,轻松掌握 Java 多态」](50-大厂面试火箭计划-Java基础/7-区分重载和重写-轻松掌握Java多态.md) - [Java 小白成长记 · 基础 · 第 8 篇「如何理解 Java 中接口存在的意义」](50-大厂面试火箭计划-Java基础/8-如何理解Java中接口存在的意义.md) - [Java 小白成长记 · 基础 · 第 9 篇「面试常备,字符串三剑客 String、StringBuffer、StringBuilder」](50-大厂面试火箭计划-Java基础/9-面试常备-字符串三剑客String-StringBuffer-StringBuilder.md) - [Java 小白成长记 · 基础 · 第 10 篇「String 的不可变真的是因为 final 吗?」](50-大厂面试火箭计划-Java基础/10-String的不可变真的是因为final吗.md) - [Java 小白成长记 · 基础 · 第 11 篇「读懂框架设计的灵魂 — Java 反射机制」](50-大厂面试火箭计划-Java基础/11-读懂框架设计的灵魂-Java反射机制.md) - [Java 小白成长记 · 基础 · 第 12 篇「从头捋了一遍 Java 代理机制,收获颇丰」](50-大厂面试火箭计划-Java基础/12-从头捋了一遍Java代理机制-收获颇丰.md) - [Java 小白成长记 · 基础 · 第 13 篇「深入理解 Java 数组」](50-大厂面试火箭计划-Java基础/13-深入理解Java数组.md) - [Java 小白成长记 · 基础 · 第 14 篇「Java 中为什么设计了包装类」](50-大厂面试火箭计划-Java基础/14-Java中为什么设计了包装类.md) ### 集合 - [Java 小白成长记 · 集合 · 第 1 篇「Java 集合框架体系总览」](60-大厂面试火箭计划-Java集合/1-Java集合框架体系总览.md) - [Java 小白成长记 · 集合 · 第 2 篇「送分题,ArrayList 的扩容机制了解吗?」](60-大厂面试火箭计划-Java集合/2-ArrayList的扩容机制了解吗.md) - [Java 小白成长记 · 集合 · 第 3 篇「HashMap 这套八股,不得背个十来遍?」](60-大厂面试火箭计划-Java集合/3-HashMap这套八股-不得背个十来遍.md) - [Java 小白成长记 · 集合 · 第 4 篇「Hashtable 渐渐被人们遗忘了,只有面试官还记得,感动」](60-大厂面试火箭计划-Java集合/4-Hashtable渐渐被人们遗忘了-只有面试官还记得-感动.md) ### 并发 - [Java 小白成长记 · 并发 · 第 1 篇「【重磅开篇】形成完善的多线程世界观」](70-大厂面试火箭计划-Java并发/10-重磅开篇-形成完善的多线程世界观.md) - [Java 小白成长记 · 并发 · 第 2 篇「Java 线程和操作系统的线程有啥区别?」](70-大厂面试火箭计划-Java并发/20-Java线程和操作系统的线程有啥区别.md) - [Java 小白成长记 · 并发 · 第 3 篇「30 张图,以 DEBUG 方式深入理解线程的底层运行原理」](70-大厂面试火箭计划-Java并发/30-以DEBUG方式深入理解线程的底层运行原理.md) - [Java 小白成长记 · 并发 · 第 4 篇「【跬步千里】详解 Java 内存模型与原子性、可见性、有序性」](70-大厂面试火箭计划-Java并发/40-跬步千里-详解Java内存模型与原子性-可见性-有序性.md) - [Java 小白成长记 · 并发 · 第 5 篇「JMM 最最最核心的概念:Happens-before 原则](70-大厂面试火箭计划-Java并发/50-JMM最最最核心的概念-Happens-before原则.md) - [Java 小白成长记 · 并发 · 第 6 篇「【有点收获】三种基本方法创建线程」](70-大厂面试火箭计划-Java并发/60-有点收获-三种基本方法创建线程.md) ## 🙋‍ 联系我 --- ### 公众号 我的公众号:**飞天小牛肉**,专注于分享计算机基础(数据结构 + 算法 + 计算机网络 + 数据库 + 操作系统 + Linux)、Java 基础和面试指南的相关原创技术好文。本公众号的目的就是**让大家可以快速掌握重点知识,有的放矢**。下方扫码关注**第一时间获取干货更新**: ### WeChat 有什么问题也可以添加我的微信,记得备注来意:格式 (学校或公司 - 姓名或昵称 - 来意)