Chapter 1

Java

Java 是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级 Web 应用开发和移动应用开发。

Subsections of Java

JDK 新特性

从 JDK8 开始,Java 做了非常大的改进,这反映出 Java 不是一个保守禁锢的语言,而是一个适应时代变化、进化的语言,去努力吸收其他语言的优秀特性。

TODO

  1. https://pretius.com/blog/java-17-features/
  2. https://www.evm.codes/playground?fork=shanghai
  3. https://mirror.xyz/xyyme.eth/dsU7KoQLyqiHrY0bQX2ETq1zkDYiW-3PtzxfzGwRdss

New Features

  1. JDK8 ~ JDK20 的新特性
  2. 对开发人员有哪些影响
  • JDK8

    • Lambda 表达式
    • Stream API
    • Optional 类
    • 新的日期时间 API
    • Nashorn JavaScript 引擎
    • Base64
    • 并行数组
    • 并发 API
    • Type Annotations
    • IO 新增
    • JVM 新增
  • JDK9

    • JShell
    • 模块化系统
    • HTTP 2 客户端
    • 改进的 Javadoc
    • 改进的 Stream API
    • Reactive Streams
    • 改进的 CompletableFuture
    • 改进的 Optional
    • 改进的 @Deprecated 注解
    • 改进的 try-with-resources
    • 改进的 Diamond 操作符
    • 改进的 Process API
    • 改进的 JVM
    • 改进的 GC
    • 改进的 IO
    • 改进的 CORBA
    • 改进的 RMI
    • 改进的 JMX
    • 改进的 JAXP
    • 改进的 JAXB
    • 改进的 JAX-WS
    • 改进的 JAX-RS
    • 改进的 JMS
    • 改进的 JDBC
    • 改进的 JNDI
  • JDK10

    • 局部变量类型推断
    • 基于时间的版本控制
    • 并行 Full GC
    • 改进的 G1 GC
    • 改进的 Parallel GC
    • 改进的 CMS GC
    • 改进的 ZGC
    • 改进的 Shenandoah GC
    • 改进的 JVM
    • 改进的 IO
    • 改进的 JAXP
    • 改进的 JAX-WS
    • 改进的 JAX-RS
    • 改进的 JMS
    • 改进的 JDBC
    • 改进的 JNDI
  • JDK11

    • HTTP Client
    • 改进的 GC
    • 改进的 JVM
    • 改进的 IO
    • 改进的 JAXP
    • 改进的 JAX-WS
    • 改进的 JAX-RS
    • 改进的 JMS
    • 改进的 JDBC
    • 改进的 JNDI

JVM

JVM 是 Java 虚拟机的缩写,是运行 Java 字节码的虚拟机。

JVM 基础

Java 中的引用:强引用、软引用、弱引用、虚引用。

不同类型的引用和 GC 有密切的关系。

JVM 内存模型

TODO

JVM GC

TODO