毕业快 5 年了,每当和人聊起自己的职场飞升之路,都不由得感激当初果断逃离舒适圈的自己。出身一所非 211、985 院校,毕业后入职了一家小型互联网公司,当着普普通通的入门工程师,工作期间虽然也时常遇到挑战,但手头的技术始终局限于表面,遇到稍微难点的实际问题就无从下手,也接触不到什么大型项目。
这样的生活持续了 3 年,公司平台的局限性和自身能力的不足让一直怀抱着进大厂梦的我在这家公司逐渐失去了斗志,过着高不成低不就的日子,同时因不确定的未来感到非常不安。
都说三年是程序员的一个坎,能否晋升或者提高自己的核心竞争力,这几年就十分关键。有一天无意间看到了一篇Spring大佬的经验分享贴,讲述了他初入圈子走过的弯路以及最后如何进入快手实现了逆袭。
顺着大佬的思路,我分析了自己的实际水平和状况:
1、技术不精不成体系:技术能力浮于表面,对底层逻辑和架构不了解,也不知道如何系统化进行学习;
2、遇到职场瓶颈期:站在3年职场的分水岭上,没有足够的综合能力,想要涨工资可技术实力不足,只能被淘汰;
3、面试没有竞争力:非名校非科班出身,想进入一线大厂,但每次面试之后杳无音讯,跳槽计划总是落空;
然后,我结合大厂的招人需求和帖子中大佬分享的经验,列出 9 个需要提升的能力,如果你和曾经的我一样迷茫,建议你也看看:
当然,想要深入学习并掌握这些能力,我深知并不简单。需要高度的自律和不少的学习时间,平时工作已经很饱和,自己去盲目自学,大概率会走弯路,消耗大量的时间和精力,学习没有体系,再用功也白费。
按照上面这个提升思路,我找到了一个学习路线和进阶笔记,这个笔记也是我实现进入大厂 40w+ 小目标的一大功臣。目前已经收到了七八个网友的反馈,说是面试问到了很多这里面的知识点。
内容涉及:Java开发介绍、Java数组、Java面向对象、常用基础类、集合、IO流、多线程、异常、反射等。
一:Java开发介绍
DOS常用命令
JVM、JRE、JDK之间的关系
Java开发环境的搭建:安装JDK,配置环境变量
Java入门程序(Java的开发流程)
Java的注释,标识符、标识符的命名规范
Java基本数据类型
变量和常量的定义及初始化
Java的运算符
运算符的优先级
Java分支语句之if...else
循环的嵌套
方法的定义
方法的形参和实参
方法的递归调用
二、Java数组
Java 数组的定义
Java 数组的声明
数组的优势与局限
数组的遍历访问(普通循环,增强for循环)
数组元素的顺序查找
数组元素的冒泡法排序
Arrays工具类的使用
二维数组
三、Java面向对象
面向对象设计思想
面向对象的分析与设计
Java与面向对象
类中成员变量的定义与意义
构造方法的定义和调用
面向对象的封装特性
局部变量和成员变量的作用域问题
静态属性、静态方法、静态代码块
面向对象的继承特性
继承中构造方法的细节
面向对象的多态特性
抽象方法与抽象类
接口
四、异常
异常的概念
异常的分类
异常的理解
常见异常介绍
运行时异常
编译时异常
运行和编译异常区别
异常的处理方式之捕获异常
异常的处理方式之抛出异常
异常的处理方式之断点调试
断点调试之引导运行步骤
自定义异常
异常关键字处理
关键字执行流程
异常总结
五、集合
集合的概念和作用
集合和数组的区别
集合框架体系介绍
集合框架之Collection接口
ArrayList和LinkedList的方法使用
ArrayList和LinkedList各自的工作原理分析原理分析
使用多种方式遍历集合
HashSet和LinkedHashSet各自的工作原理分析
集合框架之Map接口
泛型的使用
Collections工具类的使用
六、IO流
File类的作用
File类中常用方法的使用介绍
使用File类操作文件和文件夹
相对路径和绝对路径的介绍
IO流的概念和工作原理
IO流的分类
文件流的使用
转换流的使用
缓冲流的使用
对象流的使用
内存流的使用
使用不同的流实现文件内容的拷贝
七、多线程
进程和线程的介绍
进程和线程之间的区别与联系
线程实现方式之继承自Thread类
线程实现方式之实现Runnable接口
线程实现方式之线程池
线程的生命周期
线程中常用方法的使用
我把一些常用Java工具包的思维导图做了汇总,持续更新中,方便读者查阅。
从这份文档截图中就可以看到这份资料总结得非常全面,有需要的话,完整版本PDF文档点击此处免费领取。如果觉得本文对你有帮助,可以转发关注支持一下。