java9REPL工具 Jshell命令

一、产生背景
像 Python 和 Scala 之类的语言早就有交互式编程环境 REPL (read -evaluate - print - loop)了,以交互式的方式对语句和表达式进行求值。开发者只需要输入一些代码,就可以在编译前获得对程序的反馈。而之前的 Java 版本要想执行代码,必须创建文件、声明类、提供测试方法方可实现。


二、设计理念
即写即得、快速运行


三、实现目标
  1)Java 9 中终于拥有了 REPL 工具:jShell。利用 jShell 在没有创建类的情况下直接声明变量,计算表达式,执行语句。即开发时可以在命令行里直接运行 java 的代码,而无需创建 Java 文件,无需跟人解释”public static void main(String[] args)”这句废话。
  2)jShell 也可以从文件中加载语句或者将语句保存到文件中。
  3) jShell 也可以是 tab 键进行自动补全和自动添加分

四、使用举例:

1.调出Jshell

java9REPL工具 Jshell命令

2.获取帮助

java9REPL工具 Jshell命令

3.基本使用

java9REPL工具 Jshell命令

java9REPL工具 Jshell命令

4.导入指定的包

java9REPL工具 Jshell命令

5.只需按下 Tab 键,就能自动补全代码

java9REPL工具 Jshell命令

6.列出当前 session 里所有有效的代码片段

java9REPL工具 Jshell命令

7.使用外部代码编辑器来编写 Java 代码

java9REPL工具 Jshell命令

8.从外部文件加载源代码

java9REPL工具 Jshell命令

java9REPL工具 Jshell命令

9.没有受检异常(编译时异常)
java9REPL工具 Jshell命令

说明:本来应该强迫我们捕获一个 IOException,但却没有出现。因为jShell 在后台为我们隐藏了。