Java 11即将发布的功能–启动单文件源程序

Java 11即将完成,并且进入了下降阶段 。 好像在几周前就发布了Java 9,而在这里,距离发布Java 11不到几个月。 鉴于Java的新发行过程和时间表,这将变得司空见惯。 不管那是好事,我们都将其搁置一旁。

这里列出了Java 11中的更改​​。 这些是此版本中的一些不错的增强功能。 我非常兴奋的其中两个是:

– HTTP客户端(标准) http://openjdk.java.net/jeps/321 ,它将HTTP客户端API作为Java语言的一部分引入。

–启动单文件源代码程序http://openjdk.java.net/jeps/330

在本文中,我将介绍“启动单文件源代码程序”功能。 此增强功能旨在实现的目的是使运行包含单个文件的Java代码变得容易,该文件中包含“ main()”方法。

假设您在org / myapp目录下的HelloWorld.java文件中有一个简单的HelloWorld程序,如下所示:

package org.myapp;public class HelloWorld {public static void main(String[] args) throws Exception {System.out.println("Hello World!");}
}

现在,没有建议的功能,为了运行该程序,用户必须首先使用javac命令对其进行编译:

javac org/myapp/HelloWorld.java

成功编译后,您可以运行java命令来执行程序:

java org.myapp.HelloWorld

因此,这是一个两步过程。 即使对于初学者来说,它看起来也是微不足道的,但是不仅对于初学者,甚至对于经常使用Java的开发人员,它仍然可以变得更加简单。

Java 11发布后(或者如果您想立即尝试,可以从http://jdk.java.net/11/获取早期访问版本),我们可以按以下方式运行上述程序(作为单个命令) :

java org/myapp/HelloWorld.java

注意这里的区别:

1.一,我们不再使用javac命令来显式编译源代码

2.现在,将Java命令的路径传递到源文件(org / myapp / HelloWorld.java)的路径,而不是之前用来传递全限定类名的路径。

这种差异虽然很小,但很重要,因为通过Java命令传递的文件名以.java扩展名结尾的文件路径后,它现在“了解”它现在必须在内部做任何必要的事情(例如编译源代码)。 当然,这样的文件应该包含常规/有效的Java代码,并带有顶级类,该顶级类公开“ public static void main(String [])”方法。

此外,就像常规Java程序一样,您可以像以前一样继续将应用程序特定的参数传递给该程序。 例如,对于下面显示的计算器程序,在org / myapp / Calculator.java文件中:

package org.myapp;public class Calculator {public static void main(final String[] args) throws Exception {final int sum = Integer.parseInt(args[0]) +  Integer.parseInt(args[1]);System.out.println(args[0] + " + " + args[1] + " = " + sum);}
}

您可以按以下方式传递程序参数:

java org/myapp/Calculator.java 2 4

其中2和4作为程序参数传递,您将看到如下输出:

2 + 4 = 6

此功能还增加了对“ shebang”文件的支持,这些文件应具有有效的Java代码以及“ shebang”。 就个人而言,我不太喜欢该功能的这一特定方面。 但是,好消息是, JDK团队从社区中获得了反馈,并提出了该功能的这一附加方面,即非侵入性(用于已经处理Java源文件的工具/命令),如果我们不这样做,我们中的一些人可能会忽略这一点。不想使用它。 何时/如何使用“ shebang”文件用于此功能的详细信息在链接的JEP-330中进行了说明 。

到目前为止,尽管Java 11尚未发布,但我一直在使用早期访问版本,并在我的一些常规工作中广泛使用此功能,有时会涉及到一些简短的程序来帮助重现问题。 我通常不使用IDE来执行此类操作,因此能够对此类文件发出单个命令并执行它们是一个值得欢迎的增强功能。

翻译自: https://www.javacodegeeks.com/2018/07/java-11-upcoming-features.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/345673.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤题库】国家开放大学2021春2018货币银行学题目

试卷代号:2018 2021年春季学期期末统一考试 货币银行学试题 2021年7月 一、单项选择题(每小题2分,共20分,每小题有一项答案正确,请将正确答案的序号填写在括号内) 1.一国国内经济可分为居民、非金融企业、政…

【渝粤题库】国家开放大学2021春2044教育研究方法题目

试卷代号:2044 2021年春季学期期末统一考试 教育研究方法 试题(开卷) 2021年7月 一、单选题(每题5分,共25分) 1.探索性研究常采用的研究方式包括( )。 A.文献调查、经验调查、典型情况或个案分析 B.调查性研…

【渝粤题库】国家开放大学2021春2094法理学题目

试卷代号:2094 2021年春季学期期末统一考试 法理学 试题. 2021年7月 一、单项选择题(每小题有四个备选答案,其中只有一个正确的,请将正确答案的序号填在题干的括号内。每小题2分,共20分) 1.分析法学派认为&…

【渝粤题库】国家开放大学2021春2108刑法学(2)答案

试卷代号:2108 2 0 2 1年春季学期期末统一考试 刑法学(2) 试题答案及评分标准 (供参考) 2021年7月 一、选择题(每小题的备选答案中至少有一个是正确的,请将正确答案的序号字母填入题目括号内。多选、少选均不得分。每小…

截至频率_截至2013年核心Java帖子

截至频率随着2013年即将结束,我最近发现了几篇与我认为“核心Java”知识有关的帖子。 这篇文章列出了三个帖子,并提供了一个简短说明的论坛。 我这样做有两个目的:(1)帮助其他人意识到这些优秀职位的存在;&…

【渝粤题库】国家开放大学2021春2143西方经济学题目

试卷代号:2143 2021年春季学期期末统一考试 西方经济学 试题 2021年7月 一、单项选择题(从下列每小题的四个选项中,选出一项正确的,将其标号填在题后的括号内。每小题2分,共30分) 1.作为经济学的一个分支&a…

【渝粤题库】国家开放大学2021春2219房屋构造与维护管理题目

试卷代号:2219 2021年春季学期期末统一考试 房屋构造与维护管理 试题(开卷) 2021年7月 一、选择题(30题,每题2分,共60分) 1.如下图所示,形体的W面投影是( )。 2.在三面投影体系中&a…

JDK 12,合并的收集器和命名的挑战

看来可能是一种新的方法,将可在java.util.streams.Collectors类JDK 12即会,根据新方法的提出了基于Javadoc的文档,“返回一个收藏家是将输入的元素两个规定的收藏家并将其结果与指定的合并功能合并。” 目前 ,此新Collectors方法的…

【渝粤题库】国家开放大学2021春2238个案工作题目

试卷代号:2238 2021年春季学期期末统一考试 个案工作 试题 2021年7月 一、单选题(下列选项中只有一个是正确的,将正确的答案序号填写在括号内。共10题,每题2分,共20分) 1.下列关于个案工作的特点下列说法正…

【渝粤题库】国家开放大学2021春2321物流学概论题目

试卷代号:2321 2021年春季学期期末统一考试 物流学概论 试题 2021年7月 一、单项选择题(每小题2分,共20分,将正确答案选项的字母填入题目中的括号内) 1.物流观念的启蒙和产生都是在( )完成的。 A.美国 B.英国 C.日本 D…

【渝粤题库】国家开放大学2021春2409中国古代文学(B)(1)题目

试卷代号:2409 2021年春季学期期末统一考试 中国古代文学(B)(1) 试题(开卷) 2021年7月 一、填空题(每空1分,共20分) 1.如果从音乐上进行分类,《诗经》由风、、三部分组成。 2.先秦时期历史散文的…

【渝粤题库】国家开放大学2021春2476旅游学概论题目

试卷代号:2476 2021年春季学期期末统一考试 旅游学概论 试题 2021年7月 一、单项选择(在每小题的4个选项中选出一个正确的,将其序号填入题后括号内。每小题2分,共20分) 1.人们利用假期进行的以休息、休养和消遣为目的的…

Web应用程序安全性:战斗自己或寻找理智的边缘

Web应用程序应有多安全? 好吧,对于我们许多Web开发人员来说,这个问题没有多大意义。 “应用程序必须尽可能地安全。 它越安全,就越好。” 但这不是一个确定的答案。 形成项目的安全策略无济于事。 此外,仅遵循该单一指…

【渝粤题库】国家开放大学2021春2528监督学题目

试卷代号:2528 2021年春季学期期末统一考试 监督学试题 2021年7月 一、多项选择题(每小题3分,共15分) 1.监督的基本原则有( )。 A.依法监督原则 B.公开监督原则 C.公正监督原则 D.全面监督原则 2.以下属于党内监督主体的有( )。 A…

边缘计算、雾计算、云计算区别几何?

云计算是理解其中区别的关键! 1. 云计算 一种利用互联网实现随时随地、按需、便捷地使用共享计算设施、存储设备、应用程序等资源的计算模式。 云计算系统由云平台、云存储、云终端、云安全四个基本部分组成。 云平台从用户的角度可分为公有云、私有云、混合云等。…