系统的学Java当然要看我们汇总的学习路线图了。
一、Java小白必看文章
关于Java之父、Java的平台、Java应用以及就业方向,看这篇内容。
怎么入门 Java 编程?2 赞同 · 0 评论回答编辑https://www.zhihu.com/question/595764567/answer/2987386969
如果你想更深入的了解计算机相关的知识,这篇是小白扫盲必看内容。
想学编程却又对计算机一无所知怎么办?4 赞同 · 0 评论回答编辑https://www.zhihu.com/question/598769404/answer/3128915963
二、提前知道Java学习计划
希望大家可以参考黑马程序员这样的计划,根据自己每天学习的时间制定自己的学习计划。给大家作为参考:
笔记 | 包含知识点 |
---|---|
Java-第一天-基础语法 | 人机交互、Java以及发展史、主要特性、JRE和JDK |
Java-第二天-Java基础 | 注释、字面量、变量、数据类型、标识符、键盘录入 |
Java-第三天-IDEA下载安装 | IDEA下载安装、中层级结构介绍、第一个代码、类、模块、项目的相关操作 |
Java-第四天-运算符 | 运算符和表达式、算数运算符、隐式转换、强制转换、字符串相加、算术运算符总结;附习题 |
Java-第五天-流程控制语句 | 流程控制语句、if语句、switch语句、循环结构 |
Java-第六天-回顾+练习 | 相关练习题巩固前五天内容; |
Java-第七天-面向对象 | 类的概念,设计类获得对象,定义类的补充注意事项。内存图,构造器,this关键字,封装,标准JavaBean。成员变量和局部变量区别。 |
Java-第八天-常用API | String的概述,创建对象,常用API-字符串内容比较、遍历、替换、截取、分割操作;ArrayList相关学习; |
Java-第九天-ATM系统 | 以上内容完成后可以联系。 |
Java-第十天-面向对象进阶 | static、单例、代码块、继承 |
Java-第十一天-面向对象进阶 | 包、权限修饰符、final、常量、枚举、抽象类、接口等。 |
Java-第十二天-面向对象进阶 | 多态、内部类、常用API |
Java-第十三天-常用API | 时间与日期、JDK8新增日期类、包装类、正则表达式、Arrays类、常见算法、Lambda表达式 |
Java-第十四天-集合 | 集合的体系特点 Collection的常用方法 集合的遍历方式 集合存储自定义类型的对象 常见数据结构 List系列集合 补充知识:集合的并发修改异常问题 补充知识:泛型深入 |
Java-第十五天-集合 | Set系列集合、、Collection体系的特点、使用场景总结、Collection体系的综合案例、Map集合体系、补充知识:集合的嵌套 |
Java-第十六天-Stream、异常体系 | 创建不可变集合、Stream流、异常处理 |
Java-第十七天-日志框架、阶段项目 | 日志框架、日志技术体系结构、Logback概述 Logback快速入门、Logback配置详解-输出位置、格式设置、Logback配置详解-日志级别设置、阶段项目实战 |
Java-第十八天-File类、IO流 | File类的使用、IO流:概述、IO流:字节流、IO流:资源释放的方式 字符流、字符输出流、缓冲流、转换流、序列化对象、打印流 |
Java-第十九天-多线程 | 多线程的创建 方式一:继承Thread类 方式二:实现Runnable接口 方式三:JDK 5.0新增:实现Callable接口 Thread的常用方法、线程安全、线程同步、线程通信、线程池 补充知识:定时器 补充知识:并发、并行 补充知识:线程的生命周期 |
Java-第二十天-网路编程 | 网络通信三要素、UDP通信-快速入门 UDP通信-广播、组播、TCP通信-快速入门、TCP通信-多发多收消息、TCP通信-同时接受多个客户端消息、TCP通信-使用线程池优化、TCP通信实战案例-即时通信、TCP通信实战案例-模拟BS系统 |
Java-第二十一天-单元测试、反射、注解、动态代理 | 单元测试、单元测试概述、单元测试快速入门、单元测试常用注解、反射、注解、动态代理 |
Java-第二十二天-XML、XML解析、设计模式等 | XML、XML检索技术:Xpath、设计模式:工厂模式、设计模式:装饰模式x |
上述课程表是以每天学习6最少小时为基础设定的学习内容,如果各位小伙伴每天只有4小时学习内容,需要重新设定学习内容。
基础模块的计划定好,还要清楚的知道每一天学什么
三、Java学习课程
简略版Java学习路线图:
(下方链接点开直接进入课程当中)
- 入门:Java SE基础 → Java Web(含数据库+H5+js+vue)
- 中级:Maven → Git → SSM框架 → MybatisPlus → Spring Boot→ 《传智健康》项目实战 → 《瑞吉外卖》项目实战
- 进阶:Spring Cloud(微服务开发,学这一套就够了) 也可以按照以下技术点学:
Dubbo → Zookeeper → RabbitMQ → RocketMQ → Docker → Redis → MongoDB → 搜索技术Elasticsearch → MySQL进阶 - 项目:《SaaSiHRM》企业服务 → 《好客租房》生活服务 → 权限管理一体化解决方案 → 短信网关平台
- 面试:Java大厂面试专题课 → Java百度地图
以上技术,足以支撑大家找到一份好的Java开发工作,如果想工作后再提升,页面底部还有30+套课程。
工作后可以再学习提升的技术:
JDK8-15新特性 → 编程强化 → 数据库强化 → 安全框架SpringSecurity → 报表技术 → 模板引擎VelocityTools → 工作流Activiti7……
黑马程序员:2023年黑马程序员Java学习路线图74 赞同 · 13 评论文章编辑https://zhuanlan.zhihu.com/p/596422138
四、Java学习笔记
【基础】
- 黑马程序员:自学Java第一天-认识Java以及JDK的安装和下载
- 黑马程序员:自学Java第二天-Java基础语法以及IDEA安装操作
- 黑马程序员:自学Java第三天-运算符、表达式、字符串的操作等
- 黑马程序员:自学Java第四天-流程控制语句
- 黑马程序员:自学Java第五天-数组全部知识点以及7个练习题
- 黑马程序员:自学Java第六天-循环、条件控制语句、Random(附习题)
- 黑马程序员:自学Java第七天-方法的概述
- 黑马程序员:自学Java第八天:面向对象
【JavaWeb】
- MySQL的安装及登陆基本操作(附图)手把手带你安装
- MySQL基础:通过SQL对数据库进行CRUD
- MySQL基础:通过SQL对表、数据进行CRUD,万字实际案例手把手教程
- MySQL高级:掌握约束的使用
- MySQL高级:掌握表关系及建表原则
- MySQL高级:重点掌握多表查询操作
- MySQL高级:以实际案例掌握事务操作
- JDBC:从CRUD开始,理解JDBC中的各个对象作用,掌握Druid的使用
- Maven从安装到手把手教学进行项目管理
- MyBatis完成代理方式查询数据以及核心文件配置、
- Mybatis:使用映射配置文件实现CRUD操作,能够使用注解实现CRUD操作
- HTML标签大全,存起来总有一天用的上
- Java后端学CSS内容
【SSM】
- SSM框架01:Spring的IoC和DI,以及手把手带你创建Spring核心配置文件
- SSM框架02:从0-1学习Spring配置文件
- 为什么要学Spring?学什么?怎么学?
- Spring到底是如何来实现IOC和DI?案例解析入门篇
- 万字详解Spring之IOC全部知识点
- 详解DI相关内容,一文掌握DI配置与使用
- Spring掌握IOC/DI配置管理第三方bean
- Spring核心容器环境配置、创建、依赖注入等
- Spring掌握IOC/DI注解管理第三方bean
- Spring:IOC/DI注解开发管理第三方bean
- 完成Spring与Mybatis及Junit的整合开发
- Spring:入门AOP案例分析
- 能运用AOP相关知识完成对应的案例编写
五、小白入门最有难度的事情
当我们接触Java的时候,最难的应该就是Java的环境配置问题了。
建议看课程:
建议参考笔记:
黑马程序员:Java 介绍与环境搭建2 赞同 · 0 评论文章https://zhuanlan.zhihu.com/p/607156584
六、自学Java学到什么程度
简单说:跑通一个SpringBoot项目就可以面试了。
道理很简单【只要可以找到工作先,很多东西都是在工作中学的】。
尤其是针对自学,我们完全不清楚职场的状况,有工作经验通过招聘需求和业务就知道去了公司大概做什么。但是没有经验的,很难知道真正一个开发到工作中做什么。
- 1、能跑的通一个spring boot项目;
- 2、项目里的各种语言,不要一下就能看懂,但是对于不熟悉的语法和Api能够通过查询资料之后理解含义。
- 3、spring boot项目运行启动之后,能够通过url请求拿到结果,发出url请求后,这个请求经过了哪些模块,是怎么访问的数据库,然后返回,处理中出现了异常怎么办。这些流程要明白。
很多人会质疑2022年了,我就跑通一个SpringBoot项目能找到工作?解释一句,这里针对的是初级开发的工作。非要说去学习各种组件,比如redis或者是spring cloud alibaba组件等等。也没有说错,这些内容是提高竞争力的。
能够达到我说的要求,去参加面试。说实话通过面试都能学到东西,起码知道公司怎么定级的。初级程序员应该掌握什么,高级程序员应该掌握什么。多少工资范围会被问到分布式组件等问题。这样就算面试失败了,也知道方向,知道怎么更有效的学习。绝对要比脱离了实际,光听别人怎么说要强的太多了。
再和我一起看看大厂考核标准:
解读一下:
其实以上都重要,都是重点考察范围,围绕知识的一些扩展,比如在校成绩和比赛成绩;
态度:对于技术的热情也是一方面,比如自己做一个APP/网站/小程序等等;
就是学校之外的的内容,自己是否对于技术有一定的热情,自己会动手做一些什么内容,哪怕是一个小demo;
成果:有了基础+项目,还要有思考!
很多同学觉得有了前两项就够了,但是大厂呢,还要我们需要一些思考!比如,这个项目的产出,我们是否会综合考察复杂度和项目规模。
其他一些就是每个公司需要不同性格的人,有的公司核心人才要满足聪明+乐观+皮实+自省。不同的公司不一样。
七、自学Java如何写简历
先来看看错误简历示范:
至于应该怎么写简历,大家可以参考这篇内容。有关项目经验应该参考什么原则:
【一些建议】
- 如果你觉得能力胜任了,有小公司愿意招聘,可以先进入公司。千万不要安逸!进去之后快点查漏补缺。
- 另外,不要看不起外包,有的时候我觉得外包也是挺好的选择,先入行要紧!
- 其次就是进入外包公司后可以更新自己在招聘网站的简历了。
- 通过多场面试的练习,再结合背题一般都可以进入后面的面试。但是有一点要提醒大家,就是别人家说给你9k,你要个7k。如果是我,我就会开始质疑你的能力问题了。
- 入职之后,就算是公司规模小或者是业务不成熟什么的,往前冲没错,多实践才能多进步。绝对比大家闷头在家苦学一年的提升大。
最后祝各位看到本条内容的Java程序员,都可以早日找到自己理想的工作。有任何学习编程的问题都可以问我,免费答疑~有问必答!