1. Java 9的JShell介绍
JShell是Java 9新引入的交互式编程工具,它允许程序员在控制台中实时编写和运行Java代码,可作为学习、调试和快速原型设计的有用工具。JShell在内存中实例化并执行代码,无需创建或编译Java文件,因此开发者可以立即获得反馈和测试代码。
2. JShell的列表命令
JShell提供了一系列命令,用于列出和组织代码、调试程序或执行其他与JShell本身相关的任务。以下是在JShell中显示不同列表命令的方式:
2.1 创建列表
你可以通过执行 /list
命令来创建一个列表,它列出了所有可用的列表命令:
/list
执行以上命令后,会返回类似下面的列表:
1: /vars 列出当前变量
2: /methods 列出当前方法
3: /types 列出当前类型
4: /imports 列出认为导入的包
5: /exit 退出JShell
6: /reset 重置JShell
7: /reload 重新加载JShell
8: /set feedback 控制反馈式
9: /set mode 切换到指定模式
10: /help 显示命令帮助
在以上列表中,每行都包含一个列表命令及其对应的数字,使用这个数字可以更快的查找或调用相应的命令。
2.2 显示所有变量
你可以通过执行/vars
命令来显示JShell中定义的所有变量:
/vars
JShell将返回类似下面的结果:
1: int a = 1
2: int b = 2
可以看到,这将列出JShell中的所有变量及其值。
2.3 显示所有方法
你可以通过执行/methods
命令来显示JShell中定义的所有方法:
/methods
JShell将返回类似下面的结果:
1: void printHello()
2: void printWorld()
可以看到,这将列出JShell中定义的所有方法列表。
2.4 显示所有导入的包
你可以通过执行/imports
命令来显示JShell中已经导入的所有包:
/imports
这会输出类似下面的结果:
1: import java.util.*
可以看到,这将列出在JShell中认为导入的包列表。
2.5 退出JShell
你可以通过执行/exit
命令来关闭JShell命令行窗口:
/exit
这会正常地退出JShell工具。
2.6 重置JShell
你可以通过执行/reset
命令来重置JShell,将删除所有已定义的变量和方法,但不会删除导入的包:
/reset
这将重置JShell并清除所有已定义的变量、方法和表达式,但是保留导入的包。
2.7 重新加载JShell
你可以通过执行/reload
命令来重新加载JShell。当您想要重新修改定义或导入的包时,这非常有用:
/reload
这会重新加载JShell,在这之前,JShell将清除所有已定义的变量、方法和表达式,并重新导入所有已经导入的包。这个命令在修改了定义或导入语句之后非常有用。
2.8 设置反馈模式
你可以使用/set feedback
命令来设置JShell的反馈模式。JShell支持不同的反馈模式,可以根据不同的需求选择设置:
/set feedback <mode>
在这里,<mode>为所需的反馈模式之一。这可以是verbose
、normal
、silent
之一。
如果将反馈模式设置为verbose
,JShell将在每次执行语句后返回详细信息和结果。如果将其设置为normal
,JShell将只返回执行结果。如果将其设置为silent
,JShell将不返回任何信息。
以下是一个示例,将JShell的反馈模式设置为verbose
:
/set feedback verbose
2.9 切换到指定模式
你可以使用/set mode
命令来切换到不同的JShell模式。JShell提供了两种模式,分别是解释模式和调试模式:
解释模式:在这个模式下,JShell将为您提供一个交互式环境,以便您输入和执行Java代码。
调试模式:在这个模式下,JShell将启用断点和单步调试功能,可以方便的调试代码。
下面是一个示例,演示如何将JShell切换到调试模式:
/set mode debug
2.10 命令帮助
你可以使用/help
命令来获取命令的帮助信息。可以使用/help <command>
命令来获取特定命令的详细信息,其中<command>
是特定命令的名称。例如,如果想要获取/vars
命令的详细信息,可以输入以下命令:
/help /vars
这将返回关于此命令的帮助信息和用法。
总结
在Java 9中,可以使用JShell来编写Java代码,JShell提供了许多列表命令,用于列出和组织代码、调试程序或执行其他与JShell本身相关的任务。通过执行/list
命令可以创建命令列表,并以数字形式返回可用的列表命令。此外,还有其他命令用于列出所有变量、方法或导入的类型,重新加载JShell、退出JShell等操作。JShell也支持不同的反馈模式和不同的JShell模式,可以根据需要进行设置。