Java学习规划记录

前言:过往学习的知识,随着时间推移总是容易忘记,所以搜集了网上部分大神的思维导图并整理了一下(各个知识点目前尚未整理完善),随着这个学习路线去复习和学习,并整理各个知识点,帮助自己更好记忆知识点,同时也方便往后对相关知识点的查询和回顾。

编程基础

Java语言

  • 语言基础

  • 基础语法

    • 关键字
    • 标识符
    • 运算符
    • 字面量
    • 分隔符
  • 面向对象(OOP)

  • 接口(interface)

  • 枚举(enumeration)

    • 状态机
    • 错误码
    • 组织枚举
    • 策略枚举
    • 枚举工具类
  • 泛型/容器(collection/generic)(集合框架)

    • 泛型

    • 容器

      • Collection

        • List

          • Arraylist
          • LinkedList
        • Set

          • HashSet
          • TreeSet
            • 内置比较器(Comparable)
            • 外置比较器(Comparator)
        • Queue

          • 离散事件类型
      • Map<K,V>

        • HashMap

        • TreeMap

    • 容器的遍历

      • for循环

      • for-each循环

      • Iterator (迭代器)

      • ListIterator(功能更强大)

      • Enumeration(遗留容器的迭代器)

    • 工具类

      • Arrays
      • Collections
    • 遗留容器

      • Vector

        • Stack
      • Dictionary

        • Hashtable

          • Properties
      • BitSet

  • 异常(exception)

  • 反射(reflection)

  • 注解

  • I/O

  • Java1.8新特性

    • Lambda表达式
    • 函数式接口
    • Stream
  • 正则表达式

  • JVM

    • 类加载机制
    • 字节码执行机制
    • JVM内存模型
    • GC垃圾回收机制
    • JVM性能监控与故障定位
    • JVM调优
  • 并发/多线程

    • 并发编程基础
    • 并发容器
    • 原子类
    • JUC并发类工具

数据结构和算法

  • 数据结构

    • 线性表

      • 数组

      • 链表

        • 单链表
        • 双向链表
        • 循环链表
        • 双向循环链表
        • 静态链表
        • 顺序栈
        • 链式栈
      • 队列

        • 普通队列
        • 双端队列
        • 阻塞队列
        • 并发队列
        • 阻塞并发队列
    • 散列表

      • 散列函数

      • 冲突解决

        • 链表法
        • 开放寻址
        • 其他
      • 动态扩容

      • 位图

      • 二叉树

        • 平衡二叉树

        • 二叉查找树

        • 平衡二叉查找树

          • AVL树
          • 红黑树
        • 完全二叉树

        • 满二叉树

      • 多路查找树

        • B树
        • B+树
        • 2-3树
        • 2-3-4树
        • 小顶堆
        • 大顶堆
        • 优先级队列
        • 斐波拉契堆
        • 二项堆
      • 其他

        • 树状数组
        • 线段树
      • 图的存储

        • 邻接矩阵
        • 邻接表
      • 拓扑排序

      • 最短路径

      • 关键路径

      • 最小生成树

      • 二分图

      • 最大流

  • 算法

    • 复杂度分析

      • 空间复杂度

      • 时间复杂度(大O法)

        • 最好
        • 最坏
        • 平均
        • 均摊
    • 排序

      • O(n²)

        • 冒泡排序
        • 插入排序
        • 选择排序
        • 希尔排序
      • O(nlogn)

        • 归并排序
        • 快速排序
        • 堆排序
      • O(n)

        • 计数排序
        • 基数排序
        • 桶排序
    • 搜索

      • 深度优先搜索(DFS)
      • 广度优先搜索(BFS)
      • A*启发搜索
    • 查找

      • 线性表查找
      • 树结构查找
      • 散列表查找
    • 字符串匹配

      • 朴素算法
      • KMP算法
      • Robin-Karp
      • Boyer-Moore
      • AC自动机
      • Tire
      • 后缀数组
    • 其他

      • 数论
      • 计算几何
      • 概率分析
      • 并查集
      • 拓扑网络
      • 矩阵运算
      • 线性规划
    • 常用算法思想

      • 二分查找算法
      • 分治算法
      • 动态规划算法 —— 背包问题
      • KMP算法 —— 字符串匹配
      • 贪心算法 —— 集合覆盖问题
      • Prim算法 —— 修路问题
      • Kruskal算法 —— 公交站问题
      • Dijkstra算法 —— 最短路径问题
      • Floyd算法 —— 最短路径
      • 马踏棋盘算法

计算机网络

  • ARP协议
  • IP/ICMP协议
  • TCP/UDP协议
  • DNS/HTTP/HTTPS协议
  • session/Cookie

数据库/SQL

  • SQL语句书写
  • SQL语句优化
  • 事物及隔离级别
  • 索引

操作系统

  • 进程/线程
  • 并发/所
  • 内存管理和调度
  • I/O原理

设计模式

  • 单例
  • 工厂
  • 代理
  • 策略
  • 模板方法
  • 观察者
  • 适配器
  • 责任链
  • 建造者

运维知识

Web服务器 —— Nginx

应用服务器 —— Tomcat/Jetty/undertow…

CDN加速

持续集成/持续发布 —— Jenkins

代码质量检查 —— sonar

应用框架

研发工具

集成开发环境

  • Eclipse
  • intellij IDEA
  • VS Code

Linux系统

  • Linux常用命令
  • 基本Shell语法

代码管理工具

  • Git
  • SVN

项目管理/构建工具

  • Maven
  • Gradie
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值