Java学习路线

写在最前

总是在找工作时,才感叹没有珍惜时间。16年毕业,到现在仍在外包公司堆业务。身边的童鞋混的好的升值加薪,进大平台,混的一般的回老家。相比较之下,自己几年都没进步,浪费了青春。

不过,有压力就有动力,这一个多月的努力,让自己增长了不少的信心。最好的开始永远就是现在,所以趁着今天有空,把学习路线规划一下,然后就按照这个路线,跟着自己的节奏,一步步的走。

虽然可能已经走得晚点,也许会走得慢些,但是坚持下去,也算是北漂过程中对自己的认可。千里之行,始于足下!

Java基础

  1. HashMap的源码,实现原理,JDK8中对HashMap做了怎样的优化。
  2. HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?
  3. HashMap 的扩容过程
  4. HashSet 是如何保证不重复的
  5. List 和 Set 的区别
  6. 动态代理的两种方式,以及区别。
  7. cloneable接口实现原理
  8. LinkedHashMap的应用
  9. 强引用 、软引用、 弱引用、虚引用
  10. final finally finalize
  11. Java反射
  12. Arrays.sort 实现原理和 Collection 实现原理
  13. wait和sleep的区别

Java并发

  1. synchronized 的实现原理以及锁优化?
  2. volatile 的实现原理?
  3. Java 的信号灯?
  4. synchronized 在静态方法和普通方法的区别?
  5. 怎么实现所有线程在等待某个事件的发生才会去执行?
  6. CAS?CAS 有什么缺陷,如何解决?
  7. synchronized 和 lock 有什么区别?
  8. Hashtable 是怎么加锁的 ?
  9. HashMap 的并发问题?
  10. AQS
  11. ThreadLocal原理,用的时候需要注意什么?
  12. 线程池的参数有哪些,在线程池创建一个线程的过程。
  13. ThreadLocal的了解,实现原理。

Spring

  1. Spring IOC 的理解,其初始化过程?
  2. Spring Bean 的生命周期,如何被管理的?
  3. Spring Bean 的加载过程是怎样的?
  4. 如果要你实现Spring AOP,请问怎么实现?
  5. 如果要你实现Spring IOC,你会注意哪些问题?
  6. Spring 是如何管理事务的,事务管理机制?
  7. Spring 的不同事务传播行为有哪些,干什么用的?
  8. Spring 中用到了那些设计模式?
  9. Spring MVC 的工作原理?
  10. Spring 循环注入的原理?
  11. Spring AOP的理解,各个术语,他们是怎么相互工作的?
  12. Spring 如何保证 Controller 并发的安全?
  13. BeanFactory 和 FactoryBean?
  14. BeanFactory 和 ApplicationContext?
  15. SpringMVC的Controller是如何将参数和前端传来的数据一一对应的

数据库

  1. mysql分页有什么优化
  2. 悲观锁、乐观锁
  3. 组合索引,最左原则
  4. mysql 的表锁、行锁
  5. mysql 性能优化
  6. mysql的索引分类:B+,hash;什么情况用什么索引
  7. 事务的特性和隔离级别

缓存

  1. Redis用过哪些数据数据,以及Redis底层怎么实现
  2. Redis缓存穿透,缓存雪崩
  3. 如何使用Redis来实现分布式锁
  4. Redis的并发竞争问题如何解决
  5. Redis持久化的几种方式,优缺点是什么,怎么实现的
  6. Redis的缓存失效策略
  7. Redis集群,高可用,原理
  8. Redis缓存分片
  9. Redis的数据淘汰策略

数据结构和算法

  1. B+树
  2. 快速排序,堆排序,插入排序(其实八大排序算法都应该了解
  3. 一致性Hash算法,一致性Hash算法的应用

分布式相关

  1. Dubbo的底层实现原理和机制
  2. 描述一个服务从发布到被消费的详细过程
  3. 分布式系统怎么做服务治理
  4. 接口的幂等性的概念
  5. 消息中间件如何解决消息丢失问题
  6. Dubbo的服务请求失败怎么处理
  7. 重连机制会不会造成错误
  8. 对分布式事务的理解
  9. 如何实现负载均衡,有哪些算法可以实现?
  10. Zookeeper的用途,选举的原理是什么?
  11. 数据的垂直拆分水平拆分。
  12. zookeeper原理和适用场景
  13. zookeeper watch机制
  14. redis/zk节点宕机如何处理
  15. 分布式集群下如何做到唯一序列号
  16. 如何做一个分布式锁
  17. 用过哪些MQ,怎么用的,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗
  18. MQ系统的数据如何保证不丢失
  19. 列举出你能想到的数据库分库分表策略;分库分表后,如何解决全表查询的问题
  20. zookeeper的选举策略
  21. 全局ID

暂时就写这么多,按照自己的节奏,不要慌。

你可能感兴趣的:(Java学习路线)