有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

兼容性什么时候可以很快使用新的Java功能?

我正在开发一个应用程序,我计划公开发布,或者至少与一群人共享。作为一名开发人员,我面临的问题是兼容性。在我的机器上,我正在使用新的Java 8,但我害怕使用它的新功能,事实上,我甚至害怕使用Java 7中的新功能,比如try-with-resources,因为我担心用户将没有最新的Java版本,因此将无法使用我的应用程序。例如,我学校的计算机仍然使用Java 6

首先,我这样想对吗?或者,使用较新的JDK编译的代码可以在使用较旧JRE的机器上运行吗?如果我是正确的,是否有一个既定的兼容性“规则”或标准?比如,“确保你的代码与两个旧版本的JRE兼容!”或者,这纯粹是开发人员判断发布的作品何时应该使用新功能的问题?为了强调,我说的只是运行程序。用户将永远不必编译它

我知道这有点开放,但这是我能想到的最好的提问地点。 谢谢


共 (1) 个答案

  1. # 1 楼答案

    首先,您可以通过使用-version标志编译Java来指定要支持的Java版本。这意味着,因为您使用的是Java 8,所以您可以强制将代码编译到更低的版本(即Java 6)

    说到你对旧Java版本的看法——是的,你很可能会遇到这种情况。很多人出于这样或那样的原因不更新Java版本。但是,这是你必须做出决定的地方:你是选择支持他们的版本,还是选择支持另一个版本?这一部分是开放式的,但取决于您最终希望在代码中使用什么(菱形操作符,尝试使用资源(实际上是非常好的),NIO),然后您会希望使用与您和您希望支持的Java版本