- 什么是Java
- 跨平台
- 性能
- 应用场景
- Java的运行环境
- 环境变量
- IDE
- IntelliJ IDEA
- Java的基本语法
- 基本输入输出
- System.out
- Scanner
- 流程控制
- 条件
- if
- switch
- 循环
- for
- while
- 条件
- 基本数据类型
- 数组
- 字符串
- 运算符
- 算术运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 基本输入输出
- 面向对象
- 基本概念
- 类
- 接口
- 方法
- 重载
- 重写
- 三大特性
- 封装
- 继承
- 多态
- 五大原则
- 单一职责原则
- 开放封闭原则
- 里氏替换原则
- 依赖倒置原则
- 接口隔离原则
- 设计模式
- 创建型
- 工厂模式
- 单例模式
- 结构型
- 代理模式
- 适配器模式
- 行为型
- 模板方法模式
- 观察者模式
- 创建型
- Java面向对象特性
- 访问权限
- 私有
- 公有
- 保护
- 默认
- static
- 类
- 方法
- 变量
- 代码块
- final
- 类
- 方法
- 变量
- abstract
- 类
- 方法
- package
- 反射
- 泛型
- 枚举
- 访问权限
- 基本概念
- 异常处理机制
- 基本原理
- 关键字
- 常用异常类
点击展开折叠
- 常用工具类
- 集合类
- ArrayList
- LinkedList
- HashMap
- HashSet
- TreeMap
- IO流
- 字节流
- InputStream
- OutputStream
- 字符流
- Reader
- Writer
- 字节流
- 字符串处理
- StringBuilder
- StringBuffer
- 日期处理
- Date
- Calendar
- LocalDate/LocalTime
- 集合类
- 多线程
- 基本概念
- 线程/进程
- 线程的状态
- 同步/异步
- 死锁
- 线程安全
- CAS机制
- 关键字
- syncronized
- 修饰方法
- 修饰代码块
- volatile
- 线程的可见性
- 指令重排
- syncronized
- 锁机制
- AQS
- 常用锁
- ReentrantLock
- ReentrantReadWriteLock
- CountDownLatch
- 线程池
- newCachedThreadPool
- newFixedThreadPool
- newSingleThreadExecutor
- newScheduleThreadPool
- 基本概念
- 语法新特性
- fork/join(Java7)
- Lambda表达式(Java8)
- Stream API(Java8)
- 模块系统(Java9)
点击展开折叠
- 内存管理
- JVM内存分区
- 宏观分区
- 堆内分区
- GC
- GC回收器
- GC回收算法
- JVM内存分区
- 类加载
- 类加载过程
- 三种类加载器
- 双亲委派
- 解释器
- 解释执行原理
- 字节码
- JIT机制
点击展开折叠
- 基础框架
- Spring
- SpringMVC
- SpringBoot
- Log4j
- ORM框架
- Hibernate
- Mybatis
- RPC
- SpringCloud
- Dubbo
- Thrift
- gRPC
- Netty
点击展开折叠
- JDK命令行工具
- jps
- jstat
- jstack
- jinfo
- 外部工具
- maven
- git
- JProfiler
- postman
点击展开折叠
- 图书
- 入门
- 《Thinking in Java》
- 《Java核心技术》卷I
- 《Effective Java》
- 进阶
- 《深入理解Java 虚拟机》
- 《Java性能权威指南》
- 入门
- 视频
- 《尚硅谷Java入门视频教程》
- 《黑马程序员Java教程》