jdk历程

jdk8:

  1. Lambda表达式,Lambda 表达式把函数作为一个方法的参数
  2. 函数式编程
  3. 接口可以添加默认方法和静态方法,也就是定义不需要实现类实现的方法
  4. 方法引用
  5. 引入Optional来避免空指针
  6. 引入Streams相关的API
  7. 引入新的Date/Time相关的API
  8. JVM使用MetaSpace代替了永久代(PermGen Space)

jdk9

  1. 接口方法可以使用private来修饰 这跟抽象类好像了
  2. 设置G1为JVM默认垃圾收集器
  3. 支持http2.0和websocket的API
  4. 模块化
    在 Java 8 及之前的版本中,所有的 Java 类都是放在同一个类路径中的,这样容易导致类名冲突和版本冲突。而在 Java 9 引入的模块系统中,一个模块是由多个包和模块声明组成的,并且每个模块都有一个唯一的名称,这样就可以避免命名冲突和版本冲突。

jdk14
instanceof类型匹配语法简化,可以直接给对象赋值,如if(obj instanceof String str),如果obj是字符串类型则直接赋值给了str变量;

你可能感兴趣的:(java,开发语言)