Java Shell工具(JShell)

本文概述

  • JShell的优点
  • 表达方式
  • 方法
  • 包裹进口
  • Jshell命令
它是一个交互式Java Shell工具, 它使我们能够从Shell中执行Java代码并立即显示输出。 JShell是一个REPL(读取评估打印循环)工具, 可以从命令行运行。
JShell的优点 Jshell减少了运行Java程序和测试业务逻辑所需的所有工作。
如果我们不使用Jshell, 则创建Java程序涉及以下步骤。
  • 打开编辑器并编写程序
  • 保存程序
  • 编译程序
  • 编辑是否存在编译时错误
  • 运行程序
  • 编辑任何运行时错误
  • 重复这个过程
【Java Shell工具(JShell)】Jshell不需要上述步骤。我们可以评估语句, 方法和类, 甚至可以编写Hello程序而无需创建类。
如何启动JShell
要启动Jshell, 首先我们必须安装Java 9, 然后在Linux中打开终端或在Windows中打开命令提示符, 然后键入jshell?v。它将启动jshell会话并向控制台显示欢迎消息。
Java Shell工具(JShell)

文章图片
你好Java讯息
要显示简单的“ Hello Java”消息, 编写打印命令而不创建类, 然后按Enter。
Java Shell工具(JShell)

文章图片
变数
我们可以声明变量并在整个Jshell会话中的任何地方使用。让我们创建一个整数变量。
Java Shell工具(JShell)

文章图片
分号(; )是可选的, 我们可以保留它并且可以正常使用。参见, 变量b是在不使用分号的情况下创建的。
Java Shell工具(JShell)

文章图片
临时变量
如果我们不提供变量名, 则Java创建隐式变量来存储值。这些变量以$符号开头。我们可以通过指定隐式变量来使用这些变量, 如下面的屏幕快照所示。
Java Shell工具(JShell)

文章图片
表达方式 我们可以测试任何有效的Java表达式以获得即时输出。请参见以下示例。
两个整数相加
jshell> 2+3 $1 ==> 5 |created scratch variable $1 : int jshell>

复合表达
jshell> 2+(5*4+(2+1)) $4 ==> 25 |created scratch variable $4 : int jshell>

方法 要测试方法业务逻辑, 请创建一个方法并立即获得结果。请参见以下示例。
jshell> void show(){ ...> System.out.println("This is show method"); ...> } |created method show()

调用方式
jshell> show(); This is show method

要创建类, 请为该类编写源代码并通过立即创建对象来调用其方法。请参见以下示例。
jshell> class Hello{ ...> void show(){ ...> System.out.println("This is show method"); ...> } ...> } |created class Hellojshell> new Hello().show(); This is show method

包裹进口 默认情况下, 导入10个软件包, 也可以使用import语句导入任何软件包。
要查看默认导入包, 我们可以使用以下命令。
jshell> /import |import java.io.* |import java.math.* |import java.net.* |import java.nio.file.* |import java.util.* |import java.util.concurrent.* |import java.util.function.* |import java.util.prefs.* |import java.util.regex.* |import java.util.stream.*

导入java.sql包。
jshell> import java.sql.*;

列出导入软件包, 它将显示可用的可访问软件包。
jshell> /import |import java.io.* |import java.math.* |import java.net.* |import java.nio.file.* |import java.util.* |import java.util.concurrent.* |import java.util.function.* |import java.util.prefs.* |import java.util.regex.* |import java.util.stream.* |import java.sql.*

现在, 软件包数量为11, 其中包括新的java.sql。*。
Jshell命令 Jshell提供了各种有用的命令, 我们可以使用它们来修改环境, 管理代码以及获取与代码相关的信息。以下是有用的信息。
包裹进口
jshell> /import |import java.io.* |import java.math.* |import java.net.* |import java.nio.file.* |import java.util.* |import java.util.concurrent.* |import java.util.function.* |import java.util.prefs.* |import java.util.regex.* |import java.util.stream.* |import java.sql.*

命令/ vars显示变量。
jshell> /vars |int $1 = 5 |int $2 = 5 |int $4 = 25

要获取所有书面源代码, 请使用/ list
jshell> /list1 : 2+3 2 : 10-5 3 : $1 4 : 2+(5*4+(2+1)) 5 : void show(){ System.out.println("This is show method"); } 6 : show(); 7 : class Hello{ void show(){ System.out.println("This is show method"); } } 8 : new Hello().show(); 9 : import java.sql.*;

    推荐阅读