<p align="center">
<a href="https://dunwu.github.io/javacore/" target="_blank" rel="noopener noreferrer">
<img src="https://raw.githubusercontent.com/dunwu/images/master/common/dunwu-logo.png" alt="logo" width="150px"/>
</a>
</p>
<p align="center">
<a href="https://github.com/dunwu/javacore">
<img alt="star" class="no-zoom" src="https://img.shields.io/github/stars/dunwu/javacore?style=for-the-badge">
</a>
<a href="https://github.com/dunwu/javacore">
<img alt="fork" class="no-zoom" src="https://img.shields.io/github/forks/dunwu/javacore?style=for-the-badge">
</a>
<a href="https://github.com/dunwu/javacore/commits/master">
<img alt="build" class="no-zoom" src="https://img.shields.io/github/actions/workflow/status/dunwu/javacore/deploy.yml?style=for-the-badge">
</a>
<a href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh">
<img alt="code style" class="no-zoom" src="https://img.shields.io/github/license/dunwu/javacore?style=for-the-badge">
</a>
</p>
<h1 align="center">JavaCore</h1>
> ☕ **JavaCore** 是一个 Java 核心技术教程。
>
> - 🔁 项目同步维护:[Github](https://github.com/dunwu/javacore/) | [Gitee](https://gitee.com/turnon/javacore/)
> - 📖 电子书阅读:[Github Pages](https://dunwu.github.io/javacore/) | [Gitee Pages](http://turnon.gitee.io/javacore/)
## 📖 内容
> [Java 面试总结](docs/01.Java/01.JavaSE/99.Java面试.md) 💯
### [Java 基础特性](docs/01.Java/01.JavaSE/01.基础特性)
- [Java 开发环境](docs/01.Java/01.JavaSE/01.基础特性/00.Java开发环境.md)
- [Java 基础语法特性](docs/01.Java/01.JavaSE/01.基础特性/01.Java基础语法.md)
- [Java 基本数据类型](docs/01.Java/01.JavaSE/01.基础特性/02.Java基本数据类型.md)
- [Java 面向对象](docs/01.Java/01.JavaSE/01.基础特性/03.Java面向对象.md)
- [Java 方法](docs/01.Java/01.JavaSE/01.基础特性/04.Java方法.md)
- [Java 数组](docs/01.Java/01.JavaSE/01.基础特性/05.Java数组.md)
- [Java 枚举](docs/01.Java/01.JavaSE/01.基础特性/06.Java枚举.md)
- [Java 控制语句](docs/01.Java/01.JavaSE/01.基础特性/07.Java控制语句.md)
- [Java 异常](docs/01.Java/01.JavaSE/01.基础特性/08.Java异常.md)
- [Java 泛型](docs/01.Java/01.JavaSE/01.基础特性/09.Java泛型.md)
- [Java 反射](docs/01.Java/01.JavaSE/01.基础特性/10.Java反射.md)
- [Java 注解](docs/01.Java/01.JavaSE/01.基础特性/11.Java注解.md)
- [Java String 类型](docs/01.Java/01.JavaSE/01.基础特性/42.JavaString类型.md)
### [Java 高级特性](docs/01.Java/01.JavaSE/02.高级特性)
- [Java 正则从入门到精通](docs/01.Java/01.JavaSE/02.高级特性/01.Java正则.md) - 关键词:`Pattern`、`Matcher`、`捕获与非捕获`、`反向引用`、`零宽断言`、`贪婪与懒惰`、`元字符`、`DFA`、`NFA`
- [Java 编码和加密](docs/01.Java/01.JavaSE/02.高级特性/02.Java编码和加密.md) - 关键词:`Base64`、`消息摘要`、`数字签名`、`对称加密`、`非对称加密`、`MD5`、`SHA`、`HMAC`、`AES`、`DES`、`DESede`、`RSA`
- [Java 国际化](docs/01.Java/01.JavaSE/02.高级特性/03.Java国际化.md) - 关键词:`Locale`、`ResourceBundle`、`NumberFormat`、`DateFormat`、`MessageFormat`
- [Java JDK8](docs/01.Java/01.JavaSE/02.高级特性/04.JDK8.md) - 关键词:`Stream`、`lambda`、`Optional`、`@FunctionalInterface`
- [Java SPI](docs/01.Java/01.JavaSE/02.高级特性/05.JavaSPI.md) - 关键词:`SPI`、`ClassLoader`
### [Java 容器](docs/01.Java/01.JavaSE/03.容器)
![img](https://raw.githubusercontent.com/dunwu/images/master/snap/20200221175550.png)
- [Java 容器简介](docs/01.Java/01.JavaSE/03.容器/01.Java容器简介.md) - 关键词:`Collection`、`泛型`、`Iterable`、`Iterator`、`Comparable`、`Comparator`、`Cloneable`、`fail-fast`
- [Java 容器之 List](docs/01.Java/01.JavaSE/03.容器/02.Java容器之List.md) - 关键词:`List`、`ArrayList`、`LinkedList`
- [Java 容器之 Map](docs/01.Java/01.JavaSE/03.容器/03.Java容器之Map.md) - 关键词:`Map`、`HashMap`、`TreeMap`、`LinkedHashMap`、`WeakHashMap`
- [Java 容器之 Set](docs/01.Java/01.JavaSE/03.容器/04.Java容器之Set.md) - 关键词:`Set`、`HashSet`、`TreeSet`、`LinkedHashSet`、`EmumSet`
- [Java 容器之 Queue](docs/01.Java/01.JavaSE/03.容器/05.Java容器之Queue.md) - 关键词:`Queue`、`Deque`、`ArrayDeque`、`LinkedList`、`PriorityQueue`
- [Java 容器之 Stream](docs/01.Java/01.JavaSE/03.容器/06.Java容器之Stream.md)
### [Java IO](docs/01.Java/01.JavaSE/04.IO)
![img](https://raw.githubusercontent.com/dunwu/images/master/snap/20200630205329.png)
- [Java IO 模型](docs/01.Java/01.JavaSE/04.IO/01.JavaIO模型.md) - 关键词:`InputStream`、`OutputStream`、`Reader`、`Writer`、`阻塞`
- [Java NIO](docs/01.Java/01.JavaSE/04.IO/02.JavaNIO.md) - 关键词:`Channel`、`Buffer`、`Selector`、`非阻塞`、`多路复用`
- [Java 序列化](docs/01.Java/01.JavaSE/04.IO/03.Java序列化.md) - 关键词:`Serializable`、`serialVersionUID`、`transient`、`Externalizable`、`writeObject`、`readObject`
- [Java 网络编程](docs/01.Java/01.JavaSE/04.IO/04.Java网络编程.md) - 关键词:`Socket`、`ServerSocket`、`DatagramPacket`、`DatagramSocket`
- [Java IO 工具类](docs/01.Java/01.JavaSE/04.IO/05.JavaIO工具类.md) - 关键词:`File`、`RandomAccessFile`、`System`、`Scanner`
### [Java 并发](docs/01.Java/01.JavaSE/05.并发)
![img](https://raw.githubusercontent.com/dunwu/images/master/snap/20200221175827.png)
- [Java 并发简介](docs/01.Java/01.JavaSE/05.并发/01.Java并发简介.md) - 关键词:`进程`、`线程`、`安全性`、`活跃性`、`性能`、`死锁`、`饥饿`、`上下文切换`
- [Java 线程基础](docs/01.Java/01.JavaSE/05.并发/02.Java线程基础.md) - 关键词:`Thread`、`Runnable`、`Callable`、`Future`、`wait`、`notify`、`notifyAll`、`join`、`sleep`、`yeild`、`线程状态`、`线程通信`
- [Java 并发核心机制](docs/01.Java/01.JavaSE/05.并发/03.Java并发核心机制.md) - 关键词:`synchronized`、`volatile`、`CAS`、`ThreadLocal`
- [Java 并发锁](docs/01.Java/01.JavaSE/05.并发/04.Java锁.md) - 关键词:`AQS`、`ReentrantLock`、`ReentrantReadWriteLock`、`Condition`
- [Java 原子类](docs/01.Java/01.JavaSE/05.并发/05.Java原子类.md) - 关键词:`CAS`、`Atomic`
- [Java 并发容器](docs/01.Java/01.JavaSE/05.并发/06.Java并发和容器.md) - 关键词:`ConcurrentHashMap`、`CopyOnWriteArrayList`
- [Java 线程池](docs/01.Java/01.JavaSE/05.并发/07.Java线程池.md) - 关键词:`Executor`、`ExecutorService`、`ThreadPoolExecutor`、`Executors`
- [Java 并发工具类](docs/01.Java/01.JavaSE/05.并发/08.Java并发工具类.md) - 关键词:`CountDownLatch`、`CyclicBarrier`、`Semaphore`
- [Java 内存模型](docs/01.Java/01.JavaSE/05.并发/09.Java内存模型.md) - 关键词:`JMM`、`volatile`、`synchronized`、`final`、`Happens-Before`、`内存屏障`
- [ForkJoin 框架](docs/01.Java/01.JavaSE/05.并发/10.ForkJoin框架.md)
### [Java 虚拟机](docs/01.Java/01.JavaSE/06.JVM)
![img](https://raw.githubusercontent.com/dunwu/images/master/snap/20200628154803.png)
- [JVM 体系结构](docs/01.Java/01.JavaSE/06.JVM/01.JVM体系结构.md)
- [JVM 内存区域](docs/01.Java/01.JavaSE/06.JVM/02.JVM内存区域.md) - 关键词:`程序计数器`、`虚拟机栈`、`本地方法栈`、`堆`、`方法区`、`运行时常量池`、`直接内存`、`OutOfMemoryError`、`StackOverflowError`
- [JVM 垃圾收集](docs/01.Java/01.JavaSE/06.JVM/03.JVM垃圾收集.md) - 关键词:`GC Roots`、`Serial`、`Parallel`、`CMS`、`G1`、`Minor GC`、`Full GC`
- [JVM 字节码](docs/01.Java/01.JavaSE/06.JVM/05.JVM字节码.md) - 关键词:`bytecode`、`asm`、`javassist`
- [JVM 类加载](docs/01.Java/01.JavaSE/06.JVM/04.JVM类加载.md) - 关键词:`ClassLoader`、`双亲委派`
- [JVM 命令行工具](doc