JShell是Java 9中引入的新工具,用于评估在命令行上输入的Java语句。 它是Java平台上第一个正式的REPL(读取-评估-打印循环)实现,非常适合尝试Java代码而无需启动IDE或编写完整的程序!

要运行JShell,只需在命令行上键入jshell 。 显然,请确保已安装JDK 9,并且已正确设置了JAVA_HOME环境变量。 您将看到如下提示:

$ jshell
|  Welcome to JShell -- Version 9
|  For an introduction type: /help introjshell>

在提示符下键入/help以查看可用命令的列表。 要退出,请输入/exit

您可以输入代码“ snippets”,JShell将输出结果。 例如:

jshell> System.out.println("Hello World")
Hello World

您可以自动完成语句,也可以使用Tab键查看文档:

jshell> System.out.
append(        checkError()   close()        equals(        flush()        format(        getClass()     hashCode()     notify()
notifyAll()    print(         printf(        println(       toString()     wait(          write(

这是使用LICECap创建的展示JShell的GIF屏幕截图 :

翻译自: https://www.javacodegeeks.com/2017/12/java-9-jshell.html

Java 9:JShell相关推荐

  1. 第18.6.1章 JDK9的新特性—Java的REPL工具: jShell命令

    6. 新语法结构 新的语法结构,为我们勾勒出了 Java 语法进化的一个趋势,将开发者从复杂.繁琐的低层次抽象中逐渐解放出来,以更高层次.更优雅的抽象,既降低代码量,又避免意外编程错误的出现,进而提高 ...

  2. Java 10:“ var”关键字

    Java 10使用关键字var引入了局部变量类型推断 . 这意味着无需编写: Map<Department, List<Employee>> map = new HashMap ...

  3. Java 9:好的,坏的和私有的接口方法

    Java 9 是在几周前发布的. 查看发行说明 ,其中包含许多有趣的功能. 不过,我觉得并非一切都是不如甲骨文和Java行家似乎图片吧 . 我看到了Java世界中的三个趋势,分别是好,坏和丑陋. 让我 ...

  4. Java 11:String类中的新方法

    Java 11:String类中的新方法 Java 11没有很多特定于语言的功能.因此,令人惊讶的是,在Java String Class中引入了6种新方法. Java 11 String类新方法 让 ...

  5. java repl_Java REPL – jshell

    java repl Java REPL or jshell is the new tool introduced in java 9. Today we will look into Java REP ...

  6. java 终极超类,Java问答:终极父类(3),java问答

    Java问答:终极父类(3),java问答Java问答:终极父类(上) Java问答:终极父类(下) Java问答:终极父类(2)-上篇 Java问答:终极父类(2)-下篇 在之前关于 Object ...

  7. public接口可以被任何一个类实现_一文带你深入Java核心技术:对象克隆+接口与回调,还有这种操作...

    对象克隆 当拷贝一个变量时,原始变量与拷贝变量引用同一个对象,如图6-1所示.这就是说,改变一个变量所引用的对象将会对另一个变量产生影响. Employee original = new Employ ...

  8. 清华学霸花了三年时间对java理解: Java分布式架构

    什么是分布式架构 分布式系统(distributed system)是建立在网络之上的软件系统. 内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统. 透明性是指每一个数据库分布节点对用户 ...

  9. Java线程:线程的调度-合并

    Java线程:线程的调度-合并 线程的合并的含义就是将几个并行线程的线程合并为一个单线程执行,应用场景是当一个线程必须等待另一个线程执行完毕才能执行时可以使用join方法. join为非静态方法,定义 ...

最新文章

  1. php服务器日志在哪里看,云服务器日志在哪里看
  2. 我给 Apache 顶级项目提了个 Bug
  3. 疯狂python讲义视频 百度云-疯狂的python讲义 PDF 下载
  4. [分享]学历与学习力
  5. 【Java 虚拟机探索之路系列】:JIT编译器
  6. cocoapods安装bug
  7. 可视化类激活的热力图
  8. Bailian2700 字符替换【字符串】
  9. TensorFlow 莫烦python
  10. VSCode如何返回上一步
  11. 华为nova 2 Plus魔镜版语音助手逗趣玩不停
  12. qlikview连接mysql_QlikView安装
  13. Visual Paradigm导出png,如何去除的水印
  14. arcgis api 4.11之距离和面积测量实现
  15. mysq coun(*)时为啥这么慢
  16. 谷歌html弹出ie页面,如何从谷歌跳转IE,打开指定的网址
  17. css 文字颜色渐变 animation,css3文字渐变动画
  18. 苹果销量第一,棉鞋成养生必备?视频号热销商品还有哪些?
  19. [Practical.Vim(2012.9)].Drew.Neil.Tip10学习摘要
  20. 微软拼音输入法 linux,微软称Linux将会消失 后者回应将反击

热门文章

  1. SpringCloud Consul自定义服务注册
  2. 2017年秋招美团Java程序员开发,看我如何拿到offer
  3. html的<input type='radio'/>change事件坑
  4. Java架构师必看的10本书
  5. Js如何判断undefined和null
  6. ssm(Spring+Spring mvc+mybatis)实体类——Dept
  7. 最全三大框架整合(使用映射)——struts.xml和web.xml配置
  8. java实现遍历树形菜单方法——OpenSessionView实现
  9. mysql---CV出现的中英文符号错误
  10. JVM内存结构分析:为什么需要S0和S1?