# 2018-Java-Interview **Repository Path**: cydvvxx/2018-Java-Interview ## Basic Information - **Project Name**: 2018-Java-Interview - **Description**: 经历过阿里、头条、京东、去哪儿洗礼之后的2018年最新Java面试宝典 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-07-26 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 本项目是本人于2018年参加阿里、头条、京东、去哪儿等其他公司电话、现场面试之后总结出来的针对Java面试的知识点或真题,每个点或题目都是在面试中被问过的。 有疑问欢迎提 Issues 让我们共同解决,有好的想法想加进来的请提 PR ~ PS:除开知识点,一定要准备好以下内容: 1. **5~10分钟的个人介绍**(学习经历、工作经历、项目经历、能力不错的方面、一句话总结)一定要自己练得滚瓜烂熟,张口就来 2. 对抽象概念的**套路**(当面试官问你是如何理解多线程的时候,你要知道从定义、来源、实现、问题、优化、应用方面系统性地回答) 3. **项目所占的比重是非常大的**,至少与知识点的比例是五五开(纪念),所以必须针对简历中的两个以上的项目,按从业务到技术选型,从实现到优化来详细地准备 4. **压力练习**,面试的时候难免紧张,可能会严重影响发挥,建议通过找人相互提问的方式来改善 5. **表达练习**,表达能力非常影响在面试中的表现,能否简练地将答案告诉面试官,需要刻意的练习,可以通过给自己讲解的方式练习 ### Java基础 * [JVM原理](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/Java基础-JVM原理.md) * [集合](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/Java基础-集合.md) * [多线程](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/Java基础-多线程.md) ### Web框架 * [Spring](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/Web框架-Spring.md) ### 数据库 * [MySQL](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/数据库-MySQL.md) * [Redis](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/数据库-Redis.md) ### 设计模式 * [常用的几个设计模式](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/设计模式.md) ### 网络协议 * [TCP & HTTP](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/TCP&HTTP.md) ### 数据结构 * [排序算法](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/排序算法.md) ### 高并发 * [解决思路](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/高并发.md) ### 分布式 * [CAP理论](https://www.zhihu.com/question/54105974) * [锁](https://www.jianshu.com/p/c2b4aa7a12f1) * [事务](https://mp.weixin.qq.com/s/gg4q_53eiHCI3OUWzN7eWg) * [消息队列](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/分布式-消息队列.md) * [限流](https://crossoverjie.top/2018/04/28/sbc/sbc7-Distributed-Limit) * [ID生成方式](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/ID生成方式.md) * [四层、七层负载均衡的区别](https://www.jianshu.com/p/fa937b8e6712) ### 微服务 * [微服务介绍](http://www.wangtianyi.top/blog/2017/04/16/microservies-1-introduction-to-microservies/) * [服务发现原理](http://www.wangtianyi.top/blog/2017/05/15/zai-wei-fu-wu-jia-gou-zhong-de-fu-wu-fa-xian-ji-zhi/) * [服务发现Consul](http://sjyuan.cc/service-registration-and-discovery/) * [API网关原理](http://www.wangtianyi.top/blog/2017/04/22/yi-microservies-2-building-microservices-using-an-api-gateway/) * [API网关Zuul](http://sjyuan.cc/api-gateway-with-zuul/) * [服务配置中心](http://sjyuan.cc/service-config-server/) * [服务容错保护](http://sjyuan.cc/service-fault-tolerant-protected-with-hytrix/) * [BFF](http://sjyuan.cc/bff/) ### 在线编程 * [二叉树反转](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/在线编程-二叉树反转.md) * [LRU淘汰算法](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/在线编程-LRU淘汰算法.md) * [连续子数组最大和](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/在线编程-连续子数组最大和.md) * [快速排序](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/在线编程-快速排序.md) * [交替打印奇偶数](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/在线编程-交替打印奇偶数.md) * [排序打印关键字](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/在线编程-排序打印关键字.md) ### Linux * [Linux命令](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/Linux.md) ### 项目举例 * [秒杀架构](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/秒杀架构.md) * [搜索引擎](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/搜索引擎.md) ### 其他面试问题 * [从按下回车开始,到浏览器呈现出网页之间的发生了什么](http://www.wangtianyi.top/blog/2017/10/22/cong-urlkai-shi-,ding-wei-shi-jie/) * [问题排查](https://github.com/xbox1994/2018-Java-Interview/blob/master/MD/问题排查.md)