Java9之Jshell入门

写在前面

在学习JSHELL之前确保,已经安装过jdk9,可以参阅Java9安装

为什么要学Jshell

学习Jshell需要知道他的特性, Read-Eval-Print-Loop (REPL)

  • 交互式解释器(REPL)既可以作为一个独立的程序运行, 也可以很容易地包含在其他程序中作为整体程序的一部分使用。 REPL为运行Java脚本与查看运行结果提供了一种交互方式, 通常REPL交互方式可以用于调试、测试以及试验某种想法。

开始使用

  • 切换jdk环境

Java9之Jshell入门

  • 检查环境

Java9之Jshell入门

  • 切换到Jshell环境

Java9之Jshell入门

  • Hello World

Java9之Jshell入门

命令

  • 输入-help 进行查看,会展示出Jshell所支持的命令

    Java9之Jshell入门

  • /history,查看在Jshell输入的的所有指令(不管正确与否)

    Java9之Jshell入门

  • /list,列出所有你输入过的Java源代码(非命令相关)

    Java9之Jshell入门

    也可以根据id进行查询

    Java9之Jshell入门

    上图列出了我历史操作的一些与Jshell交互的Java代码命令。

    根据ID查看Java命令并执行。

    Java9之Jshell入门

  • /exit ,退出Jshell命令行

    Java9之Jshell入门

  • /edit,根据id修改曾经输入过的Java代码,一般配合/list进行使用

    利用List命令查找你要修改代码的Id。

    Java9之Jshell入门

    输入你要更改代码的Id,回车确认。

    Java9之Jshell入门

    回车后出来如下页面。

    Java9之Jshell入门

    将Java代码修改为你想要的结果,点击Accept进行保存和执行,出现如下图所示结果。默认不会自动退出,需要手动exit。

    Java9之Jshell入门

    重新查看list,发现多出一个修改过的历史。

    Java9之Jshell入门

  • /drop 删除Java历史操作记录

    根据id进行删除,也可以根据名称进行删除。

    Java9之Jshell入门

  • /reset,重置环境状态,会清空历史和list等。

    Java9之Jshell入门

  • /reload,重新启动并重置环境状态,会保留历史和list等。

    Java9之Jshell入门

  • /imports,查看导入的Java工具类。

    Java9之Jshell入门

  • /open,引入外部Java文件

    准备外部Java文件

    Java9之Jshell入门

    执行外部文件

    Java9之Jshell入门

  • /save,保存代码片段,并执行。

    以下是命令操作

    Java9之Jshell入门

  • /env,环境属性

    Java9之Jshell入门

  • /vars,列出已经声明的变量和值

    Java9之Jshell入门

常用示例

  • 创建class

    Java9之Jshell入门

  • 查看class,/types

    Java9之Jshell入门

  • 创建method

    Java9之Jshell入门

  • 查看method,/method

    Java9之Jshell入门

  • 执行method

    Java9之Jshell入门

  • 修改method,修改类也是一样。

    Java9之Jshell入门

  • 设置编辑器,利用编辑器进行编辑。

    修改完毕之后,ctrl+s即可打印出类已经修改之类的提示。

    Java9之Jshell入门

结语

ricky

交流群:244930845