从事Java开发已多年,在这整理了一些有关Java的知识体系,这不是最终版,没有最好只有更好,我会不定期的更新

Java知识体系主要包括基础知识,工具,并发编程,数据结构与算法,数据库,JVM,架构设计,应用框架,中间件,微服务架构,分布式架构等等

注意:学习编程没有捷径

少年易老学难成,一寸光阴不可轻。未觉池塘春草梦,阶前梧叶已秋声 。—朱熹《劝学诗》

勤奋才是改变你命运的唯一捷径。

一、JavaSE基础体系:

第一步:学习JAVA的开发环境配置、开发第一个Java程序。也建议大家开始使用eclipse等IDE,不必纠结是不是一定要从记事本开始。

  • JRE 和 JDK 的区别是什么?

  • 如何安装JAVA JDK?

  • 请问如何在win10系统上安装java?

  • Java零基础怎么入门?建议先学什么?

  • java写了第一个程序结果出问题了?

  • 如何扎实自己的Java基础?

  • 用dos命令运行Java-version时没有显示版本?

第二步:学习数据类型、运算符、变量。这是编程的基础,是程序的“砖块”。这些内容大多数编程语言都有,而且非常类似。

变量、数据类型、运算符

  1. 二进制和十进制的转化

  2. 注释、单行注释、多行注释、文本注释、注释内容和字节码的关系

  3. 标识符、关键字、驼峰原则

  4. 变量的本质、内存画图、变量声明和初始化

  5. 变量的分类和作用域(局部变量、成员变量、静态变量)

  6. 常量和Final

  7. 基本数据类型介绍

  8. 整型变量和整型常量

  9. 浮点类型、float、double

  10. char字符型、转义字符

  11. boolean布尔型、if语句使用要点、布尔类型占用空间问题

  12. 运算符介绍

  13. 算数运算符(二元、自增、自减)

  14. 赋值和赋值运算符

  15. 关系运算符详解

  16. 逻辑运算符、短路运算符详解

  17. 位运算符详解

  18. 字符串连接符

  19. 条件运算符(三元运算符)

  20. 运算符优先级问题

  21. 自动类型转换详解

  22. 强制类型装换详解

  23. 基本数据类型装换常见错误、溢出、L问题

  24. 使用Scanner获取键盘输入

  • 1.北京高淇Java300集(Java强烈推荐) Java300集零基础适合初学者视频教程_Java300集零基础教程_Java初学入门视频基础巩固教程_Java语言入门到精通

  • 2.JavaSE基础全套-从零开始进阶之大神(推荐) 系统教学JavaSE基础全套课程-从0开始进阶至大神_线下录制Java系列课程Java从入门到精通_/JAVA基础/数组/OOP/集合/IO流_

第三步:学习控制语句。这是编程的基础,是程序的“混凝土”。有了控制语句+变量,理论上你就可以写任意的程序了。因此,这是进入程序的门槛,需要大量的练习。

控制语句

  1. 控制语句和实现逻辑对应

  2. if单选结构

  3. if_elseif_else多选结构

  4. switch语句_IDEA更换主题

  5. 循环_while

  6. 循环_for循环_dowhile

  7. 嵌套循环

  8. break和continue语句_标签_控制语句底层原理

  9. 写一个年薪计算机_百度查问题的秘诀(重要)

  10. 个人所得税计算器软件

  11. 方法核心详解_天才思维模型教你高手学习思维模式

  12. 方法的重载

  13. 递归结构讲解_递归头_递归体

  • 1.系统教学JavaSE基础全套课程 系统教学JavaSE基础全套课程-从0开始进阶至大神_线下录制Java系列课程Java从入门到精通_/JAVA基础/数组/OOP/集合/IO流_哔哩哔哩_bilibili

  • 2.系统教学JavaSE基础全套课程【续集】 系统教学JavaSE基础全套课程【续集】-从0开始进阶至大神_线下录制Java系列课程Java从入门到精通_/JAVA基础/数组/OOP/集合/IO流_哔哩哔哩_bilibili

第四步:学习面向对象基础。通过类、对象、包等基本概念讲解。学习的时候,一定要在此处介入内存分析,这样可以对于对象等知识有非常深刻的理解。

面向对象编程-基础

  1. 面向过程和面向对象的区别

  2. 类和对象的概述

  3. 类的属性和方法

  4. 创建对象内存分析

  5. 构造方法(Construtor)及重载

  6. 对象类型的参数传递

  7. this关键字

  8. static关键字详解

  9. 局部代码块、构造代码块和静态代码块

  10. package和import详解

  11. JavaDoc生成API文档

第五步:继续面向对象,主要包含三大特征:继承、封装,以及接口、抽象类、内部类等概念。这些概念需要掌握。但是对于初学者来说,先熟悉语法。通过后面的学习再深入。不要期待初学时候就能深刻领会这些概念。

面向对象编程-进阶

  1. 面向对象的三大特性

  2. 面向对象之【封装(Encapsulation)】

  3. 访问权限修饰符

  4. 面向对象之【继承(Inheritance)】

  5. Object类

  6. 方法重写Override

  7. super关键字详解

  8. 重写equals()和toString()

  9. 继承中对象创建的内存分析

  10. 面向对象之【多态(Polymorphism)】

  11. 向上转型

  12. 向下转型

  13. instanceof运算符

  14. 编译时和运行时详解

  15. final修饰符

  16. 抽象类和抽象方法(abstrct)

  17. 接口的定义和实现

  18. JDK8的接口新特性

  19. 接口应用:内部类比较器Comparable

  20. 内部类详解

  21. Java的内存管理与垃圾回收

  • Java面向对象编程_OOP基础深入讲解 Java面向对象编程重基础深入讲解_OOP面向对象Java基础干货分享/JavaSE/面向对象编程/OOP程序设计

  • 【大力推荐】OOP面向对象Java基础干货分享 【大力推荐】OOP面向对象Java基础干货分享/JavaSE/面向对象编程/OOP程序设计_哔哩哔哩_bilibili

  • java面向对象编程_java79节课精讲面对对象 java面向对象编程_java79节课精讲面对对象_通俗讲讲编程的面向对象_面向对象三大范式_java基础面向对象编程_java程序员面向对象开发_精讲面向对象_哔哩哔哩_bilibili

关于面向对象的文章:

如果想要更详细的面向对象内容,可以观看我的几篇文章哦:

Dimple:Java入门姿势【面向对象2】定义类与创建对象_了解局部变量

Dimple:Java入门姿势【面向对象3】构造方法及其重载_方法的调用

Dimple:Java入门姿势【面向对象4】 static关键字

Dimple:Java入门姿势【面向对象5】 package和import.

Dimple:Java入门姿势【面向对象6】三大特性之一封装性

Dimple:Java入门姿势【面向对象7】三大特性之一继承性

Dimple:Java入门姿势【面向对象8】继承性-重要的知识点

第六步:异常机制。Java程序的安全需要异常机制,这是必学内容。当然,也非常简单。学习过程中,先不要揪着什么自定义异常不放,学会基本用法即可。

异常机制

  1. 异常的概述

  2. 异常的执行过程与分析

  3. try-catch-finally捕捉异常

  4. throw抛出异常

  5. throws声明异常

  6. 异常继承体系

  7. 运行时异常和编译异常

  8. 自定义异常

  • JavaSE基础入门教程 JavaSE基础入门教程-只为初学者而著_高淇Java300集/Java零基础/java/Java入门到精通/JAVA编程/JavaSE/Java基础_哔哩哔哩_bilibili

  • java基础入门教_java基础视频java基础教程 java基础入门教_java基础视频java基础教程_java300集java入门_java零基础_java视频 java零基础视频教程_java全套课_哔哩哔哩_bilibili

第七步:常用类和JDK源码阅读。学习常用类的用法:包装类、字符串相关类、实践类、Math类、File类等。学习过程中,只学怎么用这些API就及格了。要优秀,要培养高手思维,一定要结合JDK源码,一开始就培养阅读源码的习惯(虽然,可能大多数看不懂)。

Java常用类(在这里简单举例出常用的,还有很多伙伴们请自行了解)

  1. Wrapper包装类

  2. 自动装箱和自动拆箱

  3. 包装类的源码分析

  4. String类的使用与内存原理

  5. String类的源码分析

  6. StringBuffer

  7. StringBuilder

  8. 字符串处理类性能分析

  9. Date类

  10. System类

  11. DateFormat类

  12. Calendat类

  13. Math类

  14. BigInteger类和BigDecimal类

  15. Random类

  16. 枚举类

  17. File类

  18. 常见的面试题讲述与分析

  • 【基础夯实】Java常用类实战基础教程 【基础夯实】Java常用类实战基础教程_Java八大常用类核心基础_Java常用类基础入门/Java包装类/String类_哔哩哔哩_bilibili

第八步:数组和算法。学习数组时,注重结合循环管理数组。也要从底层内存理解数组,这既是学数组也是复习面向对象;再结合一些算法,比如排序和搜索算法,既练习数组的用法,也学习了算法知识,为应对企业笔试和面试做好准备。

数据结构算法

  1. 数据结构的概述

  2. 线性表

  3. 顺序表

  4. 链表

  5. 栈和队列

  6. 二叉树

  7. 二叉查找树

  8. 二叉平衡树

  9. 黑红树

  10. 冒泡排序

  11. 选择排序

  12. 递归

  13. 折半查找

  • Java基础入门必学知识数据结构与算法_Java数据结构与算法基础到进阶/Java基础入门进阶/Java数据结构分析/Java数据结构常见问题_哔哩哔哩_bilibili

  • JavaSE数据结构算法实战教程_数据结构算法实战课程/java数据结构/Java算法实战/JavaSE学习/Java编程_哔哩哔哩_bilibili

  • JavaSE数据结构和算法精讲视频教程_Java架构之红黑树/二叉树/AVL树经典数据结构与算法_JavaSE数据结构和算法视频教程_JavaSE数据结构教程_哔哩哔哩_bilibili

第九步:容器和数据结构。容器有:List、Set、Map。学习这三种容器用法只需要一两个小时。但,此时你要结合数据结构,再结合JDK源码讲解。这就是“高手习惯”,让大家既学习容器,也学习了数据结构,打深了内功,应对企业面试绰绰有余。

集合(容器)

  1. 集合和数组的联系和区别

  2. 集合框架体系

  3. ArrayList的使用和源码分析

  4. 集合中使用泛型

  5. LinkedList的使用和源码分析

  6. HashSet的使用和源码分析

  7. 哈希表及原理

  8. TreeSet的使用和源码分析

  9. 比较器Comparable和Comparator

  10. HashMap的使用和源码分析

  11. TreeMap的使用和源码分析

  12. Iterator于ListIterator

  13. Collections工具类

  14. 旧集合类Vector、Hashtable

  15. 集合总结和选择依据

  16. 泛型接口

  17. 泛型类

  18. 泛型方法

  • 编程程序员java集合和数组java集合Listjava集合哈希表java集合Mapjava集合Collectionsjava泛型java泛型接口java集合_哔哩哔哩_bilibili

  • Java集合框架完整版最新教程入门到精通_List_Set_Map_通俗易懂Java集合课程视频教程_哔哩哔哩_bilibili

第十步:IO流技术。学会各种常用流即可,掌握一些工具类的用法,比如:Apache IOUtil这样会让你在以后使用时效率大增。

IO流

  1. IO流的概念

  2. IO流的分类及其原理分析

  3. 文件流FlieInputStream、FileOutputStream

  4. 缓冲流BufferedInputStream、BufferedOutputStream

  5. 数据流ObjectInputStream、ObjectOutputStream

  6. 序列化和反序列化

  7. 转换流InputStreamReader、OutputStreamWriter

  8. 打印流PrintWrite和PrintStream

  9. 数组流ByteArrayOutputStream、ByteArrayInputStream

  10. 使用IO复制文件夹

  • JavaSE深入掌握IO流剖析File类品质课程_JavaSE阶段IO流课程教程_Java课程/Java教程/JavaIO流实战课程_哔哩哔哩_bilibili

  • 系统教学JavaSE基础全套课程-从0开始进阶至大神_线下录制Java系列课程Java从入门到精通_/JAVA基础/数组/OOP/集合/IO流_哔哩哔哩_bilibili

  • IO流_IO流精讲_IO流概念和分类_IO流的作用和原理_lo流基础用法_ java基础学习_IO流底层架构_文件字节流_哔哩哔哩_bilibili

  • javaSE部分IO流精讲视频教程_JavaSE部分File类与io流视频课程教程_哔哩哔哩_bilibili

第十一步:多线程技术。这也是笔试和面试中常见的内容。我们要学习多线程基本使用、生命周期、状态转化。如果学有余力,学习一下生产者消费者模式,让你一开始就具备架构的思维;既然学,就按照“高标准”要求自己。

多线程

  1. 进程和线程

  2. 线程的创建与启动

  3. 创建线程的三种方式对比

  4. 线程的生命周期

  5. 线程控制

  6. 多线程的安全问题与解决办法

  7. 线程的同步:同步代码块

  8. 线程的同步:同步方法

  9. 线程的同步:Lock锁

  10. 线程的死锁问题

  11. 线程通信

  12. Condition

  13. 线程的完整生命周期

  14. 线程池ThreadPoolExecutor

  15. ForkJoin框架

  16. ThreadLocal类

  • Java多线程实战精品教程_JavaSE多线程视频教程详解_包你学会_灵活运用_哔哩哔哩_bilibili

  • JavaSE多线程全套视频教程(12集)_多线程实战系列_JavaSE多线程全面深入学习_JavaSE多线程JDK新特征 _JavaSE多线程基础强化视频教程_哔哩哔哩_bilibili

第十二步:网络编程。工作中直接用到的不多,而且socket编程范式差不多,了解即可。毕竟直接让你编写基于socket底层代码的情况比较少见

网络编程

  1. 计算机网络基础知识

  2. 网络通信协议

  3. OSI参考模型

  4. TCP/IP参考模型

  5. 数据的封装与拆封原理解析

  6. TCP协议

  7. UDP协议

  8. IP地址和端口号

  9. URL和Socket

  10. 使用TCP编程实现登录功能

  11. 使用UDP编程实现客服系统

  12. 使用TCP编程实现文件上传

  • java网络编程实战讲解_java网络编程详细教程_轻松学习java网络编程_java网络编程实战开发_java网络编程全套视频精讲_java网络编程入门教程_哔哩哔哩_bilibili

  • JavaSE基础入门教程-只为初学者而著_高淇Java300集/Java零基础/java/Java入门到精通/JAVA编程/JavaSE/Java基础_哔哩哔哩_bilibili

  • Java基础入门必学知识数据结构与算法_Java数据结构与算法基础到进阶_Java面试常见数据结构和算法问题_排序算法_递归_折半查询_栈和队列_链表_哔哩哔哩_bilibili

第十三步:设计者模式,掌握常用的几种设计模式,在工作中就会有出奇的效果。

设计模式

  1. 设计模式入门

  2. 面向对象设计七大原则

  3. 简单工厂模式

  4. 工厂方法模式

  5. 单例模式

  6. 原型模式

  7. 装饰模式

  8. 适配器模式

  9. 外观模式

  • GOF23种设计模式讲解_Java gof23种设计模式详解课程_从单例到备忘录模式 23种模式详解_哔哩哔哩_bilibili

  • JavaSE知识基础全套-从0开始进阶大神_JavaSE基础知识体系从入门到精通框架_/JAVA基础/数组/OOP/集合/IO流_哔哩哔哩_bilibili

第十三步:做个项目吧。 学了这么多,不做个东西怎么对得起自己?不管是小游戏项目也好,还是基于swing的项目,还是其他控制台项目。

JavaSE练手项目:

经典小游戏,乐趣无穷夯实基础,玩到又学到~~

  • 推箱子 Java游戏项目“推箱子”基础实战教程_拒绝枯燥无味Java推箱子项目2天轻松掌握_Java项目编写推箱子游戏_项目实战_java项目教程_Java_哔哩哔哩_bilibili

  • 黄金矿工 只用了2小时做出了Java黄金矿工小游戏项目_java初级项目_java练手项目_java项目实战_Java游戏开发实战教学_java小游戏_哔哩哔哩_bilibili

  • 桌球游戏 Java桌球游戏项目_手把手教你用Java开发桌球小游戏_Java初学者项目_Java基础实战项目进阶_哔哩哔哩_bilibili

  • 俄罗斯方块 手把手教你用Java开发俄罗斯方块小游戏_java练手项目_巩固JavaSE基础_java小游戏_哔哩哔哩_bilibili

  • 飞机大战 飞机大战1.0进阶版_Java28个功能点新手能力提升必备_哔哩哔哩_bilibili

  • 贪吃蛇 1小时教你做出了Java贪吃蛇小游戏项目_java练手项目_java项目实战_java小游戏_Java游戏开发实战教学_java初级项目_哔哩哔哩_bilibili

入门书籍推荐:

  • 《明解Java》

  • 《Java从入门到精通(第4版 附光盘)》

  • 《入门很简单丛书:Java Web开发入门很简单》

  • 《程序员炼成记 从小白到工程师》

  • 《Java从小白到大牛》

  • 《JavaWeb项目开发实战入门(全彩版)》

  • 《Java精彩编程200例(全彩版)》

  • 《Java轻松学》

  • 《大话Java:程序设计从入门到精通(含DVD光盘1张)》

  • 《Java语言袖珍指南(第二版)》

基础进阶书籍:

  • 《Java编程思想(第4版) [thinking in java]》

  • 《Java核心技术 卷I:基础知识(原书第10版)》

  • 《Java核心技术卷II:高级特性(原书第10版)》

1、《实战java程序设计》

(1)由尚学堂和清华大学出版社联合发布,被誉为"java 界的红宝书”

2、《程序员修炼手册》

(1)高淇老师自己写的,知识点非常适合学习时候查阅!!!

3、《程序员面试题集大全》

(1)本套视频汇总了面试题目,附参考答案(提供电子书)

更多Java详细学习线路图——我会抽时间更新的

以上学习推荐,足以你掌握JavaSE全部知识,万事开头难,本次文章在艰难的路上为你劈荆斩麻。

javase2021最强学习线路没有之一相关推荐

  1. 6条适用于PHP初学者的学习线路和建议

    2019独角兽企业重金招聘Python工程师标准>>> 适用于PHP初学者的学习线路和建议,本期我们为大家总结出6条建议,废话不多说,我们先来看下PHP初学者的学习线路: (1) 熟 ...

  2. Java学习计划,给自己一个学习线路

    动力节点Java培训最新上线Java实验班,等你来测试自己适不适合学习Java编程哦! Java学习计划,给自己一个学习线路.语言是学习成本比较低的,Java作为一种高级语言,其相关语法相对简单,各种 ...

  3. 大数据学习线路_[个人经验篇]大数据学习线路前导篇

    大数据要学习Java编程和Linux基础,这两个是所有学习大数据从业人员都绕不开的基础知识点. 为什么要学习Java编程,大数据的很多组件或者功能模块都是用Java语言去编写的,当你进行深入理解或者学 ...

  4. DSt:数据结构的最强学习路线之数据结构知识讲解与刷题平台、刷题集合、问题为导向的十大类刷题算法(数组和字符串、栈和队列、二叉树、堆实现、图、哈希表、排序和搜索、动态规划/回溯法/递归/贪心/分治)总

    DSt:数据结构的最强学习路线之数据结构知识讲解与刷题平台.刷题集合.问题为导向的十大类刷题算法(数组和字符串.栈和队列.二叉树.堆实现.图.哈希表.排序和搜索.动态规划/回溯法/递归/贪心/分治)总 ...

  5. CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念)、早期/中期/近期应用领域(偏具体应用)、经典CNN架构(偏具体算法)概述、常用工具/库/框架/产品、环境安装、常用数据集、编程技巧

    CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念).早期/中期/近期应用领域(偏具体应用).经典CNN架构(偏具体算法)概述.常用工具/库/框架/产品.环境安装.常用数据集.编程技巧 ...

  6. CV:计算机视觉技最强学习路线

    CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念).早期/中期/近期应用领域(偏具体应用).经典CNN架构(偏具体算法)概述.常用工具/库/框架/产品.环境安装.常用数据集.编程技巧_ ...

  7. 测试开发【Mock平台】06开发:项目管理功能(二)Atnd页面搭建经验实战与学习线路梳理

    [Mock平台]为系列测试开发教程,从0到1编码带你一步步使用Spring Boot 和 Antd React 框架完成搭建一个测试工具平台,希望作为一个实战项目能为你的测试开发学习有帮助. 经过一段 ...

  8. DSt:数据结构的简介、最强学习路线(逻辑结构【数组-链表-栈和队列/树-图-哈希】、物理结构、数据运算【十大排序/四大查找-图三大搜索-树三大遍历】、高级算法【贪心/分治/动态规划】之详细攻略

    DSt:数据结构的简介.最强学习路线(逻辑结构[数组-链表-栈和队列/树-图-哈希].物理结构[元素/关系].数据运算[十大排序/四大查找-图三大搜索-树三大遍历].高级算法[贪心/分治/动态规划]) ...

  9. 自学大数据者请进:大数据学习线路及各阶段学习书籍推荐

    大数据学习路线及各阶段学习书籍推荐!废话不多说,直接切入主题,有需要的小伙伴可以参考学习! 阶段一.大数据基础--java语言基础方面 自学大数据者请进:大数据学习线路及各阶段学习书籍.视频推荐 (1 ...

  10. 向何志强学习什么(母校学报)

    向何志强学习什么(母校学报) 2005年10月29日   向何志强学习什么 李滟 2005年9月15日 最近一段时间,一个平凡的大学生的名字何志强在校园内外广为传颂.他虽然没有惊天动地的壮举,但他大义 ...

最新文章

  1. 工作报告总是写不好?表达不准确?试试这个写作方法
  2. docker化你的java应用(上)
  3. 2020-10-25(个人int误区)
  4. vld检测不输出_专业分享丨高频电刀的质量控制检测
  5. python连接redis哨兵_Python redis.sentinel方法代码示例
  6. oracle conneciton properties,在WAS Liberty连接池中,我可以验证借用连接吗?
  7. HashMap散列无序存储测试
  8. pageinfo对合并list进行分页_PageInfo实现分页
  9. Python3爬虫(六) 解析库的使用之Beautiful Soup
  10. 解决开ServiceHost时候System.PlatformNotSupportedException: Operation is not supported on this platform.
  11. Google是否投资你,得看AI支持不支持
  12. 调度 Cmax和∑Ci是什么区别
  13. echar 数据显示在小圆点里
  14. linux添加变色龙引导,变色龙引导界面屏蔽多余盘符并默认启动Mac _ 黑苹果乐园...
  15. Loadrunner报错汇总
  16. UVC Camera简单介绍
  17. 安全问题层出不穷 加密手机悄然兴起
  18. RVM算法的matlab实现
  19. JavaScript定时器倒计时60S的使用
  20. python 12306登录_实现12306模拟登录--Python

热门文章

  1. 软件即服务已经过时 硬件即服务促成云计算
  2. 按照计算机病毒存在,下列选项中,不属于按照计算机病毒存在的方式分类的是()。 - 问答库...
  3. 彻底解决联想手机数据连接不能上网问题(无需恢复出厂设置) 本文来自移动叔叔论坛 ,详细出处请参考:http://bbs.ydss.cn/thread-201115-1-1.html
  4. ThinkPad T61笔记本BIOS详细设置
  5. 阿里云OSS服务开通STS安全令牌
  6. 一、对文本文件进行数据粒度转换,即将文本文件personnel_data.txt中字段household_register的数据统一成省份,并且输出到文本文档personnel_data_new.tx
  7. 解决:打开阿里云图片显示下载,而不是直接预览的问题
  8. 车辆悬架刚度计算方法
  9. 盘点Google在2011年的重要收购
  10. matlab红外遥感温度反演,热红外遥感地表温度反演研究现状与发展趋势