相关疑难解决方法(0)

可以编译Java 8代码以在Java 7 JVM上运行吗?

Java 8引入了重要的新语言功能,例如lambda表达式.

语言中的这些更改是否伴随着编译的字节码中的这些重大更改,这些更改会阻止它在不使用某些反向转换器的情况下在Java 7虚拟机上运行?

java compatibility jvm java-7 java-8

162
推荐指数
4
解决办法
7万
查看次数

Java类文件格式主要版本号列表?

我在另一篇文章中看到了Java的主要版本号列表:

  • Java 1.2使用主要版本46
  • Java 1.3使用主要版本47
  • Java 1.4使用主要版本48
  • Java 5使用主要版本49
  • Java 6使用主要版本50
  • Java 7使用主要版本51
  • Java 8使用主要版本52
  • Java 9使用主要版本53
  • Java 10使用主要版本54
  • Java 11使用主要版本55

参考文献:

https://blogs.oracle.com/darcy/entry/source_target_class_file_version https://en.wikipedia.org/wiki/Java_class_file#General_layout

java version

144
推荐指数
4
解决办法
9万
查看次数

使用本地类型推断的程序是否适用于较低的Java版本?

Java 10引入了本地类型推理,这非常酷:

var list = new ArrayList<String>(); // Compiles fine
Run Code Online (Sandbox Code Playgroud)

但是,似乎人们不愿意在新版本发布的那一天(周,月,年)更新他们的Java版本.

这意味着我需要等到Java 8的EOL才可以使用,List.of(1, 2, 3)如果想要支持使用旧Java版本的大多数用户.

另一方面,当编译为字节码时,可能会推断出本地类型推断,因此可能使用它的程序可能会在较旧的Java版本(9或8)上运行.另一方面,Java似乎喜欢在运行时进行优化,这可能意味着类型推断需要JRE版本10.

有人试过这个吗?使用类型推断的程序是否在较旧的Java版本上运行?

感谢您的意见.

java type-inference java-10

1
推荐指数
1
解决办法
149
查看次数

标签 统计

java ×3

compatibility ×1

java-10 ×1

java-7 ×1

java-8 ×1

jvm ×1

type-inference ×1

version ×1