CS-Notes 学习笔记
面试常问Java 后端 · Java 基础

Java 8 以后的长期支持版本各有哪些常用的新特性?

先自己想一想,再看参考要点

参考要点

  • Java 8:Lambda、Stream、Optional、新的日期时间 API(java.time)、接口默认方法,元空间取代永久代
  • Java 11:var 用于 Lambda 参数、G1 成为默认的垃圾收集器(Java 9 起)、标准化的 HttpClient、String 的 isBlank、strip、repeat
  • Java 17:记录类(record)、密封类(sealed)、文本块、instanceof 模式匹配、switch 表达式
  • Java 21:虚拟线程、switch 模式匹配、记录模式、SequencedCollection
  • Lambda 编译成当前类的私有方法,调用处是 invokedynamic,不生成匿名内部类
  • Stream 是惰性求值的,遇到 collect、findFirst 这类终止操作才执行
在学习站中自测这道题

学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。