大学四年,总结一套适合小白的Java自学路线和方法 (2)

Java是一种可以撰写跨平台应用程序的、面向对象的程序设计语言。简单说,Java就是一种语言,不过是一种跑在JVM上的语言,Java编译后是字节码,而JVM会把这些字节码解释成机器码,然后做出相应的动作。

Java能干什么?

Java当前用的较多的就是做后端开发、大数据开发、安卓开发,这是当前Java技术栈较为热门的三种岗位,其中以Java后端的市场需求最大。Java也可以做桌面应用开发、游戏开发,但需求相对较少。

国内大厂,像阿里巴巴、美团、京东、拼多多等,使用的主要语言都是Java,大部分中小企业为了成熟稳定也选择Java作为后端开发语言。此外,很多著名的中间件是由Java编写的,例如:Elasticsearch、RocketMQ、Hadoop等。

Java有哪些知识? 一、Java基础

Java入门部分:

JDK、IDEA安装,第一个HelloWorld

基础内容:输入输出、命名规范、注释

数据类型:基础数据类型(及其包装类)、引用类型

修饰符:访问修饰符、非访问修饰符

运算符:赋值、算数、自增自减、比较、逻辑、位、三元运算符及其优先级

控制流程:条件判断、循环语句

数组、字符型

类与对象

面向对象三大特征:继承、封装、多态

日期、正则、大数运算(简单了解)

Java进阶部分:

IO常见文件操作

集合框架:ArrayList、LinkedList、HashMap、HashSet、ArrayDeque等

异常处理

泛型

JDBC

网络编程

Java8新特性(Lambda)

反射、注解(有点难)

二、Java高级

多线程、高并发

23种设计模式

树、红黑树、B树、散列、堆、图等

算法:十大排序、二分查找、分治、贪心算法、位运算、回溯、动态规划、搜索算法(bfs、dfs)、最短路径(Dijkstra、Floyd)、最小生成树(Prim、Kruskal)、并查集、KMP等算法

三、JavaWeb:

HTML、JavaScript、CSS

XML、JSON

Tomcat

Servlet/JSP(以Servlet为主)

JQuery、Ajax

MVC

Cookie、Session

过滤器、监听器

文件上传下载(Servlet3.0)

Linux

四、常见框架:

ORM框架:Mybatis

Spring全家桶:Spring、SpringMVC、SpringBoot

安全框架:Shiro、Spring Security(可选一种先学)

其他框架:Swagger(在线接口)、Log4j2(日志)、Quartz(定时)等

微服务:SpringCloud、Dubbo等

五、常见中间件和工具:

版本控制:Git、SVN

包管理:Maven、Gradle

关系型数据库:MySQL、Oracle等

非关系型数据库:Redis(缓存)、Memcached(缓存)、MongoDB(文档型)等

搜索引擎:Elasticsearch、Solr等

消息队列:RocketMQ、ActiveMQ、RabbitMQ、Kafka等

Web服务器:Apache、 Nginx

容器:Docker、K8S

大数据:Hadoop、Spark、Strom、Flink等

当然,上面只是罗列了大部分知识点,还有很多知识比如日志分析监控(ELK)、持续集成、分库分表等也都是热门技术,Java后端技术体系庞大。这些内容可以根据你的工作或者兴趣,选择性深入学习。

2 自学Java的三大途径—书籍、视频、博客

自学Java一般有书籍、视频、博客等学习资料,这里主要讲解三者在自学Java中的异同点。

image-20210331001025515

看书自学Java

看书是最为传统的学习方式,我们从小到大大部分的自学知识是通过看书来获得的,所以可能很多人都喜欢和适应这种方式。书籍具有严谨、体系完整等特点,并且纸质的内容来回翻阅在回顾的时候也更便捷。

但看书也有一些缺点:可能分不清主次,在学习Java的时候其实是有侧重点的,而书上可能在这方面并不会有太多的介绍和标注,并且一些冷门淘汰知识可以不用学习(例如Java Swing部分);有些内容即使作者写得很棒了,但可能会因为案例、解释较少不能完全理解(尤其是小白)。

看视频自学Java

比起书籍,更多人愿意看视频自学Java,因为看书时大部分人会觉得比较枯燥。但是视频就不一样了,视频中老师们通常会边敲边讲解,更易于知识点的理解,并且人是感性动物,看视频就如同与老师交流,好的老师会让学习效率直接翻倍。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpgyxy.html