首页 热点资讯 义务教育 高等教育 出国留学 考研考公

上课要求jdk版本1.8.0而我的版本是jdk11,有什么区别

发布网友 发布时间:2022-04-19 10:48

我来回答

1个回答

热心网友 时间:2023-08-25 01:41

jdk版本迭代都是根据上一代进行增添新功能。djk11在1.8版本上只是添加了少许新内容以适应现在互联网技术节奏,除了新添加的内容,两者没有什么影响。



也就是,如果不用到新添加的内容,运行不受影响。但是需要知道,有哪些内容是新的。

JDK1.8的新特性:

一、接口的默认方法Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法。

二、Lambda 表达式在Java 8 中你就没必要使用这种传统的匿名对象的方式了,Java 8提供了更简洁的语法,lambda表达式:Collections.sort(names, (String a, String b) -> {returnb.compareTo(a);})。

三、函数式接口Lambda表达式是如何在java的类型系统中表示的,每一个lambda表达式都对应一个类型,通常是接口类型。而“函数式接口”是指仅仅只包含一个抽象方法的接口,每一个该类型的lambda表达式都会被匹配到这个抽象方法。因为默认方法不算抽象方法,所以也可以函数式接口添加默认方法。 

四、方法与构造函数引用Java 8 允许你使用关键字来传递方法或者构造函数引用,上面的代码展示了如何引用一个静态方法,我们也可以引用一个对象的方法。

converter = something::startsWith。

String converted = converter.convert("Java")。

System.out.println(converted)。

五、Lambda 作用域在lambda表达式中访问外层作用域和老版本的匿名对象中的方式很相似。你可以直接访问标记了final的外层局部变量,或者实例的字段以及静态变量。


JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

以上内容参考:百度百科-jdk

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com