Java基础入门篇

第一章 Java开发环境的搭建

1. 常用的DOS命令

  1. - [1.1 什么是DOS命令呢?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#yuAI7)
  2. - [1.2 Java学习中一些基本的DOS命令](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#cwoNN)
  3. - [1.3 DOS命令窗口中怎么复制内容](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#HoLMs)
  4. - [1.4 怎么查看本机的IP地址](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#6AKEZ)
  5. - [1.5 怎么查看两台计算机是否可以正常通信](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#I7uL8)

2. 文本编辑快捷键

  1. - [2.1 常用的组合键](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#b1soK)<br />

3. 计算机编程语言发展史

  1. - [3.1 编程语言发展](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#fDnil)
  2. - [3.2 计算机编程语言](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#1V9DA)
  3. - [3.3 Java语言的发展史](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#WoZyc)
  4. - [3.4 Java语言的特性](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#sx6KQ)
  5. - [3.5 JDKJREJVM三者之间的关系](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#UCZHY)
  6. - [3.6 Java的加载与执行](https://www.yuque.com/wuxinxiaohuacai/ycw15x/hrtww4#q0ERd)

4. 编写java中的第一个java程序

5. 配置环境变量

  1. - [5.1 配置path环境变量](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#DQFp9)
  2. - [5.2 javacjava命令怎么用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#AhFVo)
  3. - [5.3 java HelloWorld”的执行过程以及原理](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#xhPaK)
  4. - [5.4 其他环境变量](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#8jHKH)
  5. - [5.5 JDK的一个新特性](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#gHhPF)
  6. - [5.6 注释](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#LHXqY)
  7. - [5.7 classpublic class的区别](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#q48TF)
  8. - [5.8 类体中不能直接写输出语句](https://www.yuque.com/wuxinxiaohuacai/ycw15x/dugrta#YoWM2)

第二章 标识符与关键字
1. 标识符

  1. - [1.1 标识符是什么](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#q6sdC)
  2. - [1.2 标识符命名规则和规范](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#ByQLG)

2. 关键字

  1. - [2.1 关键字是什么](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#7dLaw)

第三章 变量

1. 字面量

  1. - [1.1 字面量是什么](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#ToEvU)
  2. - [1.2 变量是什么](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#uT1z3)
  3. - [如果只有字面量,没有变量机制的话,有什么问题?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#h89tF)
  4. - [测试:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#pyAvM)

第四章 数据类型

1. 数据类型分类

  1. - [1.1 基本数据类型](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#kRt7R)
  2. - [1.2 引用数据类型](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#B7DT2)

2. 8个基本数据类型所占空间大小

3. 整型

  1. - [3.1 整型的取值范围](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#bNtzM)
  2. - [3.2 整数型字面量4种表示形式](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#peAWT)

4. 字符编码

  1. - [4.1 字符编码概述及作用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#7vKxI)

5. 字符型

6. 转义字符

7. 类型转换

  1. - [7.1 自动类型转换](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#GNGev)
  2. - [7.2 强制类型转换](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#TgWnD)
  3. - [7.3 不超范围直接赋值byteshort](https://www.yuque.com/wuxinxiaohuacai/ycw15x/kz3gzx#PUbi9)<br />
  4. - [7.4 整数能否直接赋值给char](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#IKXE0)
  5. - [7.5 原码 反码 补码](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#rIZzH)
  6. - [7.6 bytecharshort做混合运算](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#3bTEb)
  7. - [7.7 多种数据类型做混合运算](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#6WPPp)

8. 浮点型

9. 布尔类型

第五章 运算符

1. 运算符概述

  1. - [1.1 算术运算符](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#UQ126)
  2. - [1.2 关系运算符](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#5IzMQ)
  3. - [1.3 逻辑运算符](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#XOJ4H)
  4. - [1.4 赋值运算符](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#sP5nJ)
  5. - [1.5 三目运算符](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#SlsWf)
  6. - [1.6 字符串连接运算符](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#lCqhN)

测验:

  1. - [关于 i = i++](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#PScLX)
  2. - [接收键盘输入](https://www.yuque.com/wuxinxiaohuacai/ycw15x/zgid64#fXwXf)

第六章 控制语句

1. 选择语句(分支语句)

  1. - [1.1 if语句](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#VNtnV)
  2. - [1.2 switch语句](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#MMCyx)
  3. - [1.2.1 switch语句支持的值有哪些?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#U9SVc)
  4. - [1.2.2 关于case合并的问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#4ZdT4)

2. 循环语句

  1. - [2.1 for循环](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#YOc9x)
  2. - [2.1.1 语法机制:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#xIHIr)
  3. - [2.1.2 执行原理:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#dcxgi)
  4. - [2.2 while循环](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#dIJ3U)
  5. - [2.2.1 while循环的语法机制以及执行原理](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#LBJC1)
  6. - [2.3 do...while循环](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#uL1xZ)
  7. - [2.3.1 do..while循环语句的执行原理以及语法机制:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#v5b1E)

3. 转向语句

  1. - [3.1 break](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#j7ZSV)
  2. - [3.2 continue](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#C5aeh)
  3. - [3.3 return(这个目前暂不学习,后面讲方法的时候会使用。)](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#hJNlL)

第七章 方法与递归

1. 方法

  1. - [1.1 方法的概念及作用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#FRMto)
  2. - [1.2 语法机制](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#zuZ7g)

2. 方法重载

  1. - [2.1 方法重载的优点](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#i7YUx)
  2. - [2.2 方法重载的条件](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#Kq3Xy)

3. 方法递归

  1. - [3.1 方法递归是什么](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#zTgyF)
  2. - [3.2 StackOverflowError](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#bHU8Y)
  3. - [递归假设是有结束条件的,就一定不会发生栈内存溢出错误吗?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#RswsH)
  4. - [3.3 如何解决StackOverflowError](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#J7Ht8)

第八章 面向对象初步

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

  1. - [1.1 面向过程的缺点(耦合度高,扩展力差。)](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#GyriR)
  2. - [1.2 面向过程的优点(快速开发)](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#dzq1J)
  3. - [1.3 面向对象](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#cw80l)
  4. - [1.4 OOAOODOOP](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#9ZwfS)

2. 类和对象

  1. - [2.1 类的定义](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#Zei5L)
  2. - [2.2 对象的创建](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#Ndxs7)
  3. - [2.3 对象和引用的区别](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#nF1kp)
  4. - [2.4 成员变量默认值](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#mPZaO)
  5. - [2.5 NullPointerException](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#B4b8W)
  6. - [2.6 进一步理解访问类中属性](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#LuNNk)
  7. - [2.7 方法调用时参数的传递问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#F6HJM)

3. 构造方法

  1. - [3.1 构造方法概念及作用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/fogcqv#GCwEN)

第九章 面向对象三大特征:封装

1. 封装基本概念

  1. - [1.1 封装的作用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#ICyBd)
  2. - [1.2 怎么进行封装](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#gEpuI)

第十章 static、this关键字

1. static关键字

  1. - [1.1 static关键字概述](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#6TtjW)
  2. - [1.2 空指针异常进一步分析](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#6J53M)
  3. - [1.3 静态代码块](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#tFBQc)
  4. - [1.4 实例语句块(代码块)](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#mrL9L)
  5. - [1.5 代码执行顺序(综合1.31.4)](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#372Q4)

2. this关键字

  1. - [2.1 this在内存中的表示](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#48WQs)
  2. - [2.2 this啥时候不能省略](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#nvnm0)
  3. - [2.3 this(实际参数列表)用法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#wIAG1)
  4. - [2.4 小结:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#c5ZA5)

第十一章 面向对象三大特征:继承

1. 继承的作用、相关特性

  1. - [1.1 继承的作用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#YOh7e)
  2. - [1.2 继承的相关特性](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#6cWMC)
  3. - [1.3 print进一步分析](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#D1UQX)
  4. - [1.4 object类的一些方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#Pq4Vj)

2. 方法覆盖

  1. - [2.1 什么时候使用方法覆盖](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#dm4fM)
  2. - [2.2 方法覆盖的构成条件](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#OwMj0)
  3. - [2.3 object类的toString方法覆盖](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#9FYHO)

第十二章 面向对象三大特征:多态

1. 向上转型和向下转型的概念

  1. - [1.1 向上转型](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#BFi8P)
  2. - [1.2 向下转型](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#DoFgV)

2. 多态

  1. - [2.1 多态的基础语法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#JXYaL)
  2. - [2.2 多态在开发中的作用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#V7FlW)
  3. - [2.3 方法覆盖与多态](https://www.yuque.com/wuxinxiaohuacai/ycw15x/elgozn#pjPyZ)

第十三章 super关键字

1. super基础语法

  1. - [1.1 superthis的异同点](https://www.yuque.com/wuxinxiaohuacai/ycw15x/nob0wy#UXa4y)
  2. - [1.2 super()的使用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/nob0wy#en4e3)
  3. - [1.3 super. 什么时候不能省略](https://www.yuque.com/wuxinxiaohuacai/ycw15x/nob0wy#4LGGJ)
  4. - [1.4 super.的一些疑问](https://www.yuque.com/wuxinxiaohuacai/ycw15x/nob0wy#0UDr3)

1.5 在父和子中有同名的属性或方法

Java基础进阶篇

第一章 集成开发工具

1. 什么是集成开发工具

eclipse安装使用

1. 基本概念

  1. - [1.1 eclipse:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/geyib6#D3jaL)

2.eclipse的安装

3. eclipse工具的使用

  1. - [3.1 基本使用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/geyib6#gjMJJ)
  2. - [3.2 出现了兼容问题:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/geyib6#ivBlv)
  3. - [3.3 eclipse设置字体](https://www.yuque.com/wuxinxiaohuacai/ycw15x/geyib6#tR47U)
  4. - [3.4 快速生成代码](https://www.yuque.com/wuxinxiaohuacai/ycw15x/geyib6#unCmP)

idea安装使用
1. IDEA工具安装
2. IDEA工具的使用
3. IDEA工具的快捷键以及一些简单的设置

第一章 final关键字

1. final关键字基本语法

第二章 抽象类

1. 抽象类概念

  1. - [1.1 什么是抽象类](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#yDCSf)
  2. - [1.2 抽象类怎么定义](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#VnifT)

2. 抽象类基础语法

第三章 接口

1. 接口的基本语法

  1. - [1.1 接口基本知识](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#4J9jU)
  2. - [1.2 接口基本语法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#bctL1)
  3. - [1.3 继承和实现都存在的话,代码应该怎么写](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#2XONO)

2. 接口在开发中的作用

3. 类型和类型之间的关系

4. 抽象类和接口的区别

第四章 包

1. package概述及使用

  1. - [1.1 package概述](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#7L5Tz)
  2. - [1.2 package怎么用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#mvncn)
  3. - [1.3 包名的命名规范](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#CAO30)
  4. - [1.4 对于带有packagejava程序编译、运行](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#hnMRM)

2. import

  1. - [2.1 import使用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#JbWqR)
  2. - [2.2 import什么时候不需要](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#xRchf)

第五章 访问控制权限

1. 访问控制权限基本概念

  1. - [1.1 访问控制权限都有哪些](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#9FapK)
  2. - [1.2 控制的范围](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#49eQ8)
  3. - [1.3 访问控制权限修饰符可以修饰什么](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#A5SMv)

第六章 object类中的一些方法

1. toString()方法

  1. - [1.1 如何学习这些方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#aBHUT)
  2. - [1.2 tostring方法学习](https://www.yuque.com/wuxinxiaohuacai/ycw15x/wg2vwb#qDODH)

2. equals方法

3. finalize()方法

4. hashCode方法

第七章 匿名内部类

1. 什么是内部类
2. 内部类分类
3. 匿名内部类

第八章 数组

1. 一维数组

  1. - [1.1 数组的优点和缺点](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#1Tk00)
  2. - [1.2 main方法上面的“String[] args”](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#ivPMW)
  3. - [1.3 java中的数组是怎么进行拷贝](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#ooenz)

2. 二维数组

第八章 Arrays工具类

1. 常见排序算法

  1. - [1.1 冒泡排序](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#6rHkA)
  2. - [1.2 选择排序](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#VYcxN)

2. 数组的元素查找

  1. - [2.1 二分法查找](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#XXOy2)

3. Arrays工具类使用

第九章 String类

1. String类存储原理

  1. - [1.1 String s1 ="abcdef"String s3 = new String("xy")的区别](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#PqvrT)
  2. - [1.2 String在堆内存的存储](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#n4b0B)

2. String类中的构造方法

3. String类当中常用方法

4. StringBuffer

  1. - [4.1 如果需要进行字符串的频繁拼接:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#1BHUb)
  2. - [4.2 如何优化StringBuffer的性能](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#mjD6H)
  3. - [4.3 String为什么是不可变的](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#1yDPE)
  4. - [4.4 StringBuilder/StringBuffer为什么是可变的](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#vcRyR)
  5. - [4.5 StringBufferStringBuilder的区别](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#iocGT)

第十章 包装类

1. 包装类

  1. - [1.1 包装类存在的意义](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#MDU1b)
  2. - [1.2 基本数据类型的包装类](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#pkuFj)
  3. - [1.3 Integer类的构造方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#rqGBB)
  4. - [1.4 自动装箱和自动拆箱](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#e57Nc)
  5. - [1.5 Integer非常重要的面试题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#hnxPf)
  6. - [1.6 NumberFormatException](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#xJ12V)
  7. - [1.7 Integer类当中有哪些常用的方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#gzPz3)
  8. - [1.8 String int Integer之间互相转换](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mlymar#XCs3Q)

第十一章 日期类

第十二章 数字类

第十三章 random类

第十四章 枚举

1. 枚举基本概念

  1. - [1.1 语法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#XLNO9)
  2. - [1.2 什么时候使用](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#8fH4V)
  3. - [1.3 switch语句中使用枚举](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#7Elhi)

第十五章 异常

1. 异常的概念及作用

2. 异常是什么时候创建的

3. 异常的继承机制

  1. - [3.1 编译时异常和运行时异常的区别](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#CUqau)

4. 异常的处理

  1. - [4.1 深入try..catch](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#ubcQp)
  2. - [4.2 异常对象有两个非常重要的方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#BJ8b2)
  3. - [4.3 关于try..catch中的finally子句](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#6NQuu)
  4. - [4.4 final finally finalize有什么区别](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#hM2tk)
  5. - [4.5 方法覆盖的遗留问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/pl6xio#BLCCL)

5. Java中怎么自定义异常

第十六章 集合

1. 集合继承结构图

  1. - [1.1 集合的基本概念](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#d0z9d)

2. Map集合继承结构图

3. collection接口常用方法

  1. - [3.1 Collection中能存放什么元素](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#bwWMs)
  2. - [3.2 Collection中的常用方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#qt4N0)
  3. - [3.3 集合遍历/迭代](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#CPTZ6)
  4. - [3.4 深入Collection集合的contains方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#GEWqh)
  5. - [3.5 关于集合元素的remove](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#UXqhu)

4. List接口中常用方法

  1. - [4.1 ArrayList集合](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#JFJtz)
  2. - [4.2 LinkList源码分析](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#jRytx)

5. vector

6. HashSet

7.Map接口

  1. - [7.1 Map集合遍历](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#URpT9)

8. hashMap

  1. - [8.1 哈希表数据结构](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#KyK3c)
  2. - [8.2 哈希表](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#RTAws)
  3. - [8.3 hashMap](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#yQ8oS)

9. TreeSet

  1. - [9.1 自平衡二叉树](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#1o9gM)

10. 属性类Properties

11. Collections工具类

第十七章 泛型

1. 泛型基本概念

  1. - [1.1 自动类型推断机制(又称为钻石表达式)](https://www.yuque.com/wuxinxiaohuacai/ycw15x/yygatp#yd4E9)

2. foreach

第十八章 IO流

1.IO流基本概念

  1. - [1.1 什么是IO](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#bGnoJ)
  2. - [1.2 IO流的分类](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#wNJFy)
  3. - [1.2.1 java IO流的四大家族](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#NfVzu)
  4. - [1.2.2 java.io包下需要掌握的16个流](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#lmRjT)

2.FileInputStream

  1. - [2.1 基本格式](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#vICGG)
  2. - [2.2 FileinputStream其他方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#IuG4O)

3. FileOutputStream

  1. - [3.1 文件复制](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#Qvz4D)
  2. - [3.1.1 文件复制过程](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#sROhn)
  3. - [3.1.2 代码分析](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#G2pKp)

4. FileReader

5. FileWriter

  1. - [5.1 复制普通文本文件](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#EcTFM)

6. BufferedReader

7. InputStreamReader

8. BufferedWriter

9. DataInputStream

10. DataOutputStream

11. PrintStream

  1. - [11.1 日志工具](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#hzkWS)

12. File

  1. - [12.1 File类概述](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#F4NhQ)
  2. - [12.2 File类其它常用方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#sg57S)

13. 序列化和反序列化

  1. - [13.1 序列化](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#Y7EiH)
  2. - [13.1.1 transient关键字](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#3v5Qp)
  3. - [13.1.2 序列化版本号](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#Dmjre)
  4. - [13.2 反序列化](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#keCT2)

14. IO+Properties的联合应用

  1. - [14.1 properties文件书写](https://www.yuque.com/wuxinxiaohuacai/ycw15x/giop7g#Dzrz4)

第十九章 多线程

1. 多线程基本概述

  1. - [1.1 什么是进程?什么是线程?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#wETjH)
  2. - [1.2 线程、进程在内存中的表现](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#urnzF)

2. 实现线程的方式

  1. - [2.1 第一种方式](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#DkUJj)
  2. - [2.1.1 线程的start方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#KrN9u)
  3. - [2.2 第二种方式](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#RIsyN)
  4. - [2.2.1 匿名内部类方式](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#GLyrG)

3. 线程对象的生命周期

4. 获取当前线程对象

5. 关于线程的sleep方法

  1. - [5.1 Thread.sleep()方法的一个面试题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#Ndoc2)

6. 终止线程的睡眠

  1. - [6.1 强行终止一个线程的执行](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#RTPAP)
  2. - [6.2 合理的终止一个线程的执行](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#oufrq)

7. 线程的调度

  1. - [7.1 常见的线程调度模型](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#2smXd)
  2. - [7.2 java中提供了哪些方法是和线程调度有关系的](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#FC0VD)

8. 线程的优先级

  1. - [8.1 yield方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#p3S95)
  2. - [8.2 线程合并](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#H71Og)

9. 关于多线程并发环境下,数据的安全问题

  1. - [9.1 什么时候数据在多线程并发的环境下会存在安全问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#QrEkt)
  2. - [9.1.1 三个条件](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#lCs64)
  3. - [9.1.2 怎么解决线程安全问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#UYCrP)
  4. - [9.1.3 那些变量存在线程安全问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#wrz2i)
  5. - [9.1.4 扩大同步范围](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#sCccv)

10. synchronized

  1. - [10.1 synchronized的三种写法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#S9nmX)
  2. - [10.2 面试题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#d0lg6)
  3. - [10.2.1](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#mCIPS)
  4. - [10.2.2](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#KBM4h)
  5. - [10.2.3](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#ZIK9a)
  6. - [10.2.4](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#0H4JP)
  7. - [10.3 死锁问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#pCZgy)
  8. - [10.3.1 死锁代码实现](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#Q5OeC)

11. 总结:开发中应该怎么解决线程安全问题

12. 守护线程

13. 定时器

14. 实现线程的第三种方式

15. Object类中的wait和notify方法

  1. - [15.1 生产者和消费者模式](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#fF5WW)
  2. - [15.2 生产者和消费者模式代码实现](https://www.yuque.com/wuxinxiaohuacai/ycw15x/mmlm14#7spZX)

第二十章 反射

1. 反射机制概述

  1. - [1.1 反射机制有什么用?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#bsnva)
  2. - [1.2 反射机制的相关类在哪个包下?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#KooU3)
  3. - [1.3 反射机制相关的重要的类有哪些?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#j2w5s)

2. 获取class的三种方式

3. 通过反射实例化对象

4. 通过配置文件实例化对象

  1. - [4.1 只让静态代码块执行](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#TgFKm)

5. 获取一个文件的绝对路径

  1. - [5.1 以流的形式直接返回](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#F5CM4)

6. 资源绑定器

7. JDK中自带的类加载器

  1. - [7.1 什么是类加载器?](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#qdtbS)
  2. - [7.2 JDK中自带了3个类加载器](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#S33fp)
  3. - [7.3 类加载分析:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#RifmD)
  4. - [7.4 双亲委派机制](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#LvxQ3)

8. 回顾反射机制

9. 获取Field

  1. - [9.1 反编译filed](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#fwhAb)
  2. - [9.2 通过反射机制访问一个java对象的属性](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#spgrP)

10. 反射method

  1. - [10.1 反编译一个类的方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#3DZoO)
  2. - [10.2 通过反射调用一个对象的方法](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#DYo4J)

11. 反射constructor

  1. - [11.1 通过反射调用构造方法实例化对象](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#AeVGn)

12. 获取一个类的父类、接口

第二十一章 注解

1. 注解基本概述

  1. - [1.1 关于JDK lang包下的Override注解](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#qWnrJ)
  2. - [1.2 Deprecated](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#AY3Md)
  3. - [1.3 注解的属性](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#ZnBQg)
  4. - [1.4 属性为value的省略问题](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#BVkBY)
  5. - [1.5 注解当中的属性可以是哪一种类型](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#30ODP)
  6. - [1.7 属性为数组](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#mnqD7)

2. 元注解

  1. - [2.1 关于Target注解:](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#snvSN)
  2. - [2.2 关于Retention注解](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#P4hYG)
  3. - [2.2.1 Retention的源代码](https://www.yuque.com/wuxinxiaohuacai/ycw15x/bc0e2c#6J5Us)

3. 反射注解
4. 注解在开发中有什么用

各版本JDK的新特性

各版本的JDK新特性