JDK8、9、10的区别为:模式不同、引入不同、概念不同。
一、模式不同
1、JDK8:JDK8的部署是一个单体模式,即使项目内容少,也需要一整套的JRE环境。
2、JDK9:JDK9引入模块后,能将所有的类组织成模块形式。在新建项目时,不再需要整套的JRE环境。
3、JDK8:纯卖和JDK10能将所有的类组织成模块形式。在新建项目时,不再需要整套的JRE环境。
二、引入不同
1、JDK8:JDK8在接口中不能引入默配液认方法和静态方法,只能在类中引入默认方法和静态方法。
2、JDK9:JDK9在接口中不能引入默认方法和静态方法,只能在类中引入默认方法和静态方法。
3、JDK8:JDK10既能在类中引入默认方法和静态方法,也能在接口中能做盯引入默认方法和静态方法。
三、概念不同
1、JDK8:JDK8引入了Lambda 表达式概念。
2、JDK9:JDK9在Lambda 表达式的基础上,引入了Reactive Streams(响应式流)概念。
3、JDK8:JDK10在Reactive Streams(响应式流)的基础上,引入了订阅管理器连接订阅者和发布者概念。