我想知道在JDK 8下,使用编译器兼容级别1.7与JDK 7作为系统默认值来运行/构建软件是否有差异?我更关心与Android构建、应用程序构建、Eclipse、Android Studio等方面的参考。
是的,JDK 1.8 中有许多新的类,例如 java.time 类。如果您使用 JDK 1.7 构建,将无法获得这些类;但如果您使用编译器兼容级别为 1.7 的 JDK 1.8 进行构建,则可以使用它们。
在使用JDK 8并使用编译器兼容性级别1.7运行/构建软件与使用JDK 7作为系统默认时,存在差异。
在JDK 8下运行软件并使用编译器兼容性级别:您在jdk 1.7中进行编译,但在1.8上运行。没有问题,您的程序将按需工作。
JDK 7作为系统默认值:您在1.7版本中进行编译,并在同一版本上运行。
我想知道在什么情况下您会选择第一种情况?