目录

一、大纲

一、Java基础

二、计算机基础

三、工具的使用

四、数据库

五、web前端

六、JavaWeb

七、框架

八、互联网分布式技术


发现身边很多自学java却放弃的,真的挺可惜的。

白白浪费了几个月宝贵的时间,且放弃一次,就会有下一次。

如何学习Java并成功?——要有一个清晰的目标!

比如培训还是其他学习方式,都是达成目标的一个方法,这个方法不够,可以找别的方法来达成目标。

所以,在学Java前希望你想清楚,你想不想成为一个程序员,想得话就做好准备,知道自己选择的是什么

当然,一个随便放弃的人,也不适合做程序员。——毕竟老板给你安排任务,你告诉他你放弃了?

再说下我,不知不觉踏入互联网行业已经四年了。

回顾当初第一次接触Java,是在大学的课堂,晦涩难懂的知识点,现在还能想起被期末考试支配的恐惧。

直到踏入互联网这个行业,再回想一下自己整个入行到工作的历程,总结了一下学习Java的路线,希望可以帮到各位初入行的Java小白。

一、大纲

多数事情,都要有目标的行动,行动为了完成目标。还可以把目标写下来或打印出来,贴到身边明显的地方,有利于督促自己。

学Java,但是不能只学Java,因为在计算机这棵大树中,Java只是一片叶子。

一个合格的Coder,除了Java,还需要熟悉操作系统、计算机网络、数据库、前端、中间件、框架等等这些东西,如果要成为一个Top Coder,项目管理、英语、沟通、算法也很重要。

就针对就业来说,个人觉得掌握 Java基础、计算机基础、工具的使用、数据库、web前端,Javaweb,框架使用、Linux、中间件,就算一个入门级的Coder了。

一、Java基础

我把 Java 基础部分真正要学的内容列一下。

01、Java 简介

  • Java语言概述
  • Java中JDK、JRE、JVM三者之间的关系
  • Java中public class与class
  • Java标识符与关键字
  • Java 变量
  • Java 数据类型
  • Java运算符
  • Java 表达式 & 语句 & 代码块
  • Java中的注释

02、Java 控制语句

  • Java if else
  • Java switch 语句
  • Java for 循环
  • Java while 循环
  • Java break 语句
  • Java continue 语句

03、Java 数组

  • Java 数组
  • 多维数组
  • Java 数组复制

04、Java 面向对象(1)

  • Java 类和对象
  • Java 方法
  • Java 方法重载
  • Java 构造方法
  • Java 字符串
  • Java 访问权限
  • Java this 关键字
  • Java final 关键字
  • Java 递归
  • Java instanceof 操作符

05、Java 面向对象(2)

  • Java 继承
  • Java 方法重写
  • Java super 关键字
  • 抽象类 & 抽象方法
  • Java 接口
  • Java 多态
  • Java 封装

06、Java 面向对象(3)

  • 嵌套&内部类
  • Java static 关键字
  • Java 匿名内部类
  • Java 单例
  • Java 枚举类
  • Java 枚举构造方法
  • Java 枚举字符串
  • Java 反射

07、Java 异常处理

  • Java 异常简介
  • Java 异常处理
  • Java try catch
  • Java throw 和 throws
  • Java 捕获多个异常
  • Java try-with-resources
  • Java 注解
  • Java 注解类型
  • Java 日志
  • Java 断言

08、Java 集合

  • Java 集合框架
  • Java 集合接口
  • Java List 接口
  • Java ArrayList
  • Java Vector
  • Java Stack

09、Java 队列

  • Java 队列接口
  • Java 优先级队列
  • Java 双端队列接口
  • Java LinkedList
  • Java 数组队列
  • Java 阻塞队列接口
  • Java ArrayBlockingQueue
  • Java LinkedBlockingQueue

10、Java Map

  • Java Map 接口
  • Java HashMap
  • Java LinkedHashMap
  • Java WeakHashMap
  • Java EnumMap
  • Java SortedMap 接口
  • Java NavigableMap 接口
  • Java TreeMap
  • Java ConcurrentMap 接口
  • Java ConcurrentHashMap

11、Java Set

  • Java Set 接口
  • Java HashSet
  • Java EnumSet
  • Java LinkedHashSet
  • Java SortedSet 接口
  • Java NavigableSet 接口
  • Java TreeSet
  • Java 集合算法
  • Java 迭代器接口
  • Java ListIterator 接口

12、Java 字节流

  • Java IO 流简介
  • Java InputStream
  • Java OutputStream
  • Java FileInputStream
  • Java FileOutputStream
  • Java ByteArrayInputStream
  • Java ByteArrayOutputStream
  • Java ObjectInputStream
  • Java ObjectOutputStream
  • Java BufferedInputStream
  • Java BufferedOutputStream
  • Java PrintStream

13、Java 字符流

  • Java Reader
  • Java Writer
  • Java InputStreamReader
  • Java OutputStreamWriter
  • Java FileReader
  • Java FileWriter
  • Java BufferedReader
  • Java BufferedWriter
  • Java StringWriter
  • Java PrintWriter

14、Java 并发编程

  • 进程与线
  • 多线程的入门类和接口
  • 线程组和线程优先级
  • 线程的状态及主要转化方法
  • 线程间的通信
  • 重排序和 happens-before
  • volatile
  • synchronized 与锁
  • CAS 与原子操作
  • AQS
  • 计划任务
  • Stream 并行计算原理
  • Frok/Join
  • 通信工具类
  • CopyOnWrite
  • 并发集合容器
  • 锁接口和类
  • 阻塞队列
  • 线程池原理

15、Java 虚拟机

  • Java 内存结构
  • 垃圾回收
  • JVM 内存区域
  • Java 虚拟机栈
  • class 文件
  • 字节码指令
  • JVM 参数调优
  • Java 对象模型
  • HotSpot
  • 类加载机制
  • 编译和反编译
  • 反编译工具(javap)
  • JIT
  • 虚拟机性能监控和故障处理工具(jps、jstack、jmap、jstat、jconsole、javap)

怎么系统化的学习呢?

推荐一套视频,动力节点老杜讲的Java零基础教程,在 B 站上看。

 https://www.bilibili.com/video/BV1Rx411876f

二、计算机基础

计算机基础都包括哪些呢?

计算机组成原理、操作系统、计算机网络、数据结构与算法。

计算机组成原理

先说计算机组成原理,这部分内容主要涉及

计算机系统概述

  • 数据与运算
  • CPU 概述
  • 存储子系统概述
  • 总线和 IO 概述

计算机基础知识的学习建议学习《计算机专业导论》

计算机专业导论可以帮助你对即将学习的学科有一个大致的了解,知识注重广度而非深度。

软件工程专业的同学也可以去看《软件工程导论》

三、工具的使用

如果你既想写出质量杠杠的 Java 代码,又想追求开发效率,用 Intellij IDEA 准没错!

可以去 B 站上看一下这个 Intellij IDEA 的教学视频。

www.bilibili.com/video/BV14t411z77T

大家都知道,版本控制系统非常重要!!!!!!

即便你只是一个人在编码,它也可以帮助你创建项目的快照、记录每个改动、创建不同的分支等等。

如果你参与的是多人协作,它更是一个无价之宝,你不仅可以看到别人对代码的修改,还可以同时解决由于并行开发带来的冲突。

版本控制系统有很多,其中最突出的代表就是 Git。

想要把 Git 学好的话,可以看看这套Git教学视频。

www.bilibili.com/video/BV1iv411p7ap

四、数据库

Java 实习工作,不外乎增删改查嘛,不要抱太多幻想,基本上任何一个人的实习经历,都是从 CRUD 开始的。 要学习MySQL 的话,推荐看下边这套

www.bilibili.com/video/BV1fx411X7BD

B站上很经典的视频教程,好评如潮,涵盖MySQL的全部知识点了

这一套组合拳打下来,找一份实习工作我认为是完全没问题了。

这也是一个 Java 后端程序员必须掌握的技能点,缺一不可!

五、web前端

虽然是作为Java后端开发Coder,但是面对一个完整的项目,与前端有着不可或缺的关系。

简单的前端知识我们还是需要了解的。

还有就是,也不是所有的公司都是区分前后端的,全栈工程师显然更厉害。

前端基础技术(HTML/CSS/JavaScript)

HTML:

www.bilibili.com/video/BV11t411K74Q

CSS:

www.bilibili.com/video/BV1tt411M7Vj

JavaScript:

www.bilibili.com/video/BV1Ft411N7R3

另外推荐一些你会遇到的知识学习教程

  • Linux基础知识(用于做web服务器)

www.bilibili.com/video/BV1Li4y1V7pG

  • Vue.js(最容易上手的前端框架)

www.bilibili.com/video/BV1q54y1v7T7

六、JavaWeb

Web阶段过后,就是JavaWeb了。

推荐这两套视频,不同版本的,直接跟着视频学

JavaWeb【IDEA版本】

www.bilibili.com/video/BV1Yz411B7Pk

JavaWeb【Eclipse经典版】

www.bilibili.com/video/BV18z411i7g

七、框架

要找到一份 Java 实习工作的话,Spring 的系列框架是要懂一些,不要求多熟练,如果可以掌握一个框架,尤其是 Spring Boot,那对你也有帮助。因为如果你不会这玩意的话,基本上是做不了项目的。

主要涉及的内容有:

  • Spring
  • Spring MVC
  • MyBatis
  • Spring Boot

关于 SSM(Spring+Spring MVC+MyBatis)的学习,可以看下面这个视频。

www.bilibili.com/video/BV1Ug4y1i7W7

关于 Spring Boot 的学习,可以看下边这个视频

www.bilibili.com/video/BV1pK411G7aw

学了 SSM + Spring Boot,就可以上手实战项目了,像 GitHub 上的 vhr 和 mall,都是不错的练手项目,强烈推荐。

八、互联网分布式技术

这时候你的水平还是仅仅存留在对框架的简单运用上,要想进一步学习,还要找一些框架的源码,进行深入了解。

除此之外还有这个时候的你应该对设计模式了如指掌,还需要看一些关于代码编写优化的书,提高自己的代码能力。

可以学习分布式架构、微服务等提升自己的技术。

随着我们的业务量越来越大和越重要,单体的架构模式已经无法对应大规模的应用场景,而且系统中决不能存在单点故障导致整体不可用,所以只有垂直或是水平拆分业务系统,使其形成一个分布式的架构,利用分布式架构来冗余系统消除单点的故障,从而提高整个系统的可用性。

同时分布式系统的模块重用度更高,速度更快,扩展性更高是大型的项目必不可少的环节。

而微服务架构引入策略 – 对传统企业而言,开始时可以考虑引入部分合适的微服务架构原则对已有系统进行改造或新建微服务应用,逐步探索及积累微服务架构经验,而非全盘实施微服务架构。

既然已经踏入互联网圈子,成为程序员中的一员,就要秉持“一直学习”的观念,经常更新自己的技术库,对于专业的java程序员来说真的不夸张!

推荐视频:

Dubbo视频教程:https://www.bilibili.com/video/BV1Sk4y197eD

Redis视频教程:https://www.bilibili.com/video/BV14t411H76W

Maven多模块管理:https://www.bilibili.com/video/BV1kg4y187td

Linux视频教程:https://www.bilibili.com/video/BV1dt411W7N1

SpringCloud视频教程:https://www.bilibili.com/video/BV1ZV411y7ix

SpringCloud Alibaba视频教程:https://www.bilibili.com/video/BV1nK4y1j7gL

Nginx视频教程:https://www.bilibili.com/video/BV11V411C7r9

Spring Session视频教程:https://www.bilibili.com/video/BV1iK411p7dZ

FastDFS视频教程:https://www.bilibili.com/video/BV1ta4y1v7Kw

RabbitMQ视频教程:https://www.bilibili.com/video/BV1Ap4y1D7tU

MyCat视频教程:https://www.bilibili.com/video/BV1gK4y1b7iU

Docker视频教程:https://www.bilibili.com/video/BV1QA411L7B5

Kubernetes(k8s)视频教程:https://www.bilibili.com/video/BV1KU4y147g3

MySQL集群视频教程:https://www.bilibili.com/video/BV1Rg4y1i7VR

SVN视频教程:https://www.bilibili.com/video/BV1ux411j7H2

Apache Shiro视频教程:https://www.bilibili.com/video/BV14T4y1g75M

大型互联网电商项目:https://www.bilibili.com/video/BV1RQ4y1K7Pq

总之,先把主要知识点掌握彻底掌握,慢一点是正常的,求快得不偿失,等把底层基础知识打牢,在学东西的时候就会快很多,以后完全可以多找项目练手,学习效率嗖嗖的,有时候慢就是快。

Java学习教程,Java从入门到精通,全套Java视频教程+笔记+配套工具相关推荐

  1. Marvelous Designer布料和角色服装造型完整教程零基础入门到精通实用教学视频教程

    Marvelous Designer布料和角色服装造型完整教程零基础入门到精通实用教学视频教程 marvelous designer是目前世界上最流行的服装打板和模拟软件,能够即时的演算服装的打板,外 ...

  2. java从入门到精通教程_Java从入门到精通全套教程

    Java从入门到精通全套教程视频简介: 随着电脑网络的飞速发展,对现代计算机软件人才的要求越来越高.既要求他们横向掌握多门主流的编程语言,又需要同时至少对1-2门编程技术有深刻的认知.特此,星火视频为 ...

  3. [转]从入门到精通,Java学习路线导航

    引言 最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧. J ...

  4. 从入门到精通,Java学习路线导航

    引言 最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧. J ...

  5. 从入门到精通,Java学习路线导航(附学习资源)

    引言 最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧. J ...

  6. 从入门到精通,Java学习路线导航(附学习资料+持续更新)

    引言 最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧. J ...

  7. Java学习教程整理

    Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 网上有很多 Java 教程,无论是基础入门还是开发小项目的教程都比比皆是,可是系统的很少,对于Java 学习者来说找到系 ...

  8. javame学习_从零基础自学Java教程:648集全网最新Java学习教程,一学就会

    我们都知道Java的功能非常的强大,Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即J ...

  9. 2023最新java学习教程(学习路线+课程大纲+视频教程+面试题+学习工具)

    2023最新java学习教程汇总(学习路线+课程大纲+视频教程+面试题+学习工具) 目录 一.首先要了解什么是JAVA? 二.Java发展及就业前景分析 三.Java学习路线图 四.Java课程大纲 ...

  10. java学习教程之代码块

    学编程吧java学习教程之代码块发布了,欢迎通过xuebiancheng8.com来访问 java中的代码块包括下面几种: 1.普通代码块 2.构造代码块 3.静态代码块 1.普通代码块很简单看下面这 ...

最新文章

  1. 清华《人工智能之认知图谱》:中美高水平学者数量领跑全球
  2. java字符_Java String 类
  3. SOPC第一课 建立QSYS系统
  4. python函数知识四 迭代器、生成器
  5. 对Visual Studio 示例:Fitch and Mather 7.0的研究初步
  6. 『设计模式』不看就亏了的设计模式总结
  7. 周末舞会(信息学奥赛一本通-T1332)
  8. Linux位置无关代码实现,浅谈位置无关代码
  9. android adb.exe端口占用
  10. java后端开发简历模板,最全Java知识总结
  11. 论文降重神器,一键毕业,真香!错过就后悔一整年的论文降重指南
  12. TP LINK交换机 console 超级终端链接设置
  13. net.sf.json.JSONArray之fromObject的坑
  14. julia安装源_[julia]本地离线安装package
  15. word文档里怎么撤回上一步的操作
  16. 蓝桥杯 填空题 水题 等差素数列 C++ 简单暴力枚举
  17. HDU_4379_The More The Better
  18. scanner——04scaner进阶
  19. 如何用Python从海量文本抽取主题?
  20. 区块链之一 起源思想和本质

热门文章

  1. mysql 100个标题_100个超强吸引人的标题100个吸引人的标题
  2. css样式字体文本汇总
  3. 前段JavaScript学习---狂神说java笔记
  4. 求和计算机教案,數列求和教案.doc
  5. Python编程 条件判断语句
  6. python爬虫学习(2) —— 爬一下ZOL壁纸
  7. 打破“中规中矩”,手机QQ何以萌翻众人?
  8. 动态规划---石子游戏
  9. LeetCode 643 题解
  10. 产品运营人员常用的5款软件,解决远程办公问题