jshell_五分钟的JShell

jshell

这篇文章建立在我的My Java 9顶级功能文章的基础上,通过对这些功能的深入研究。 在这里,我们向您展示如何在五分钟内学习jshell并改善Java 9开发经验。

入门

假设您已经下载并安装了Java 9,则可以通过键入以下内容启动Shell:

jshell

或者,如果您要详细-

C:\jdk9TestGround>jshell -v
| Welcome to JShell -- Version 9
| For an introduction type: /help introjshell>

变数

只需键入变量,带或不带分号–

jshell> int i = 1;
i ==> 1
| created variable i : int

未分配的值会自动分配给以$ –开头的变量

jshell> "Hello World"
$1 ==> "Hello World"
| created scratch variable $1 : String

这意味着我们以后可以重用该值–

jshell> System.out.println($1);
Hello World

控制流程

jshell的下一步是使用控制流(对于if,while,…)。 我们可以通过输入条件,对每个新行使用return来做到这一点–

jshell> if ("Hello World".equals($1)) {...> System.out.println("Woohoo my if condition works");...> }
Woohoo my if condition works

快速提示是使用TAB进行代码完成

方法

我们可以用与流程控制类似的方式声明一个方法,然后按

每条新线–

jshell> String helloWorld() {...> return "hello world";...> }
| created method helloWorld()

然后叫它–

jshell> System.out.println(helloWorld());
hello world

我们还可以更改外壳程序中的方法,并使用方法调用尚未定义的方法-

jshell> String helloWorld() {...> return forwardReferencing();...> }
| modified method helloWorld(), however, it cannot be invoked until method forwardReferencing() is declared
| update overwrote method helloWorld()

现在我们修复方法–

jshell> String forwardReferencing() {...> return "forwardReferencing";...> }
| created method forwardReferencing()
| update modified method helloWorld()

班级

我们还可以在jshell中定义类–

jshell> class HelloWorld {...> public String helloWorldClass() {...> return "helloWorldClass";...> }...> }
| created class HelloWorld

并分配和访问它们-

/env

有用的命令

现在,我们已经掌握了一些基本的快速命令–

标签 代码完成
/ vars 当前shell中的变量列表
/方法 当前shell中的方法列表
/清单 jshell会话中的所有代码段
/进口 当前在外壳进口
/方法 当前shell中的方法列表
/类型 当前的类在外壳中定义,在上述情况下,我们将看到“类HelloWorld”
/编辑 使您可以在编辑器中编辑会话(默认为JEditPad)
/出口 闭门会议

翻译自: https://www.javacodegeeks.com/2017/10/jshell-five-minutes.html

jshell

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/334629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

极速pdf编辑器的水印如何去掉_如何修改PDF?有没有详细的PDF编辑器操作方法?...

在工作中我们每天都会处理很多文件,而PDF格式因为其格式稳定也被越来越多的人接受并使用,但也正因为如此,PDF的修改相比较以前常用的Word会复杂很多。那么应该如何修改PDF呢?其实使用PDF编辑器就能让PDF文档像Word一样轻松编辑。1…

python django开发网站项目难吗_用django开发网站时遇到的问题

1.网站的登录功能怎么实现:密码的存储机制、重置密码时链接的生成算法,第三方认证的原理等等。django的密码储存是 Hashsalt 并迭代 第三方认证是用oauth2django-admin里面有写了哦 循环1000次加密算法google关键词 hash salt,oauth22.介绍设…

查看 Linux 系统版本(发行版本)信息的相关命令语句

文章目录一、查看 version 文件二、只查看内核版本号三、查看系统内核版本信息四、查看系统基础版本及发行版本信息五、仅查看发行版本信息一、查看 version 文件 [roothtlwk0001host ~]# cat /proc/version Linux version 4.18.0-193.6.3.el8_2.x86_64 (mockbuildkbuilder.bs…

计算机网络专科升本科,目前专科升本科有哪几种途径?

原标题:目前专科升本科有哪几种途径?随着社会的高速发展,只有专科学历是远远不够自身发展需求的。于是有不少同学就想专科升本科学历来提高自己的职业竞争力,但他们对于目前专科升本科的几种途径还不够了解。那么,目前…

java私有属性和私有方法_Java 9中什么是私有的?

java私有属性和私有方法在进行面试时,我发现大多数应聘者都不知道Java中的private修饰符真正意味着什么。 他们对此有所了解,足以应付日常编码,但还远远不够。 这不成问题。 足够了解就足够了。 但是,了解Java的一些内部工作仍然很…

stata F值缺失_stata面板数据回归操作之GMM

新手面板数据回归之GMM 的 stata 操作步骤广义矩估计( Generalized Method of Moments 即 GMM ) 原理就是回归!就是一种高级点的回归!我也是新手,也有很多不太懂的地方。断断续续学习了两个月,看了很多文献…

后缀为frm是什么文件_Shell 点文件可以为你做点什么

了解如何使用配置文件来改善你的工作环境。-- H.waldo Grunenwald(作者)不要问你可以为你的 shell 点文件(dotfile)做什么,而是要问一个 shell 点文件可以为你做什么!我一直在操作系统领域里面打转,但是在过去的几年中,我的日常使…

LFS、BLFS、ALFS、HLFS的区别详解

Linux From Scratch (LFS) 及其后代代表一种新方法,向用户揭示 Linux 操作系统是如何工作的。LFS 基于这样的假设,即一部分一部分地编译完整的操作系统不仅能够揭示操作系统是如何工作的,也允许独立的操作人员为速度、内存占用或安全性而构建…

jax-rs jax-ws_什么是JAX-RS注释?

jax-rs jax-wsJAX-RS概述(第1部分) JAX-RS API构成了Java EE平台承诺提供标准驱动技术的重要组成部分。 互联网无处不在的性质以及对微服务体系结构的日益增长的兴趣已将更多的精力放在小型可扩展的自治服务及其互操作性上。 允许微服务彼此之间以及“外…

计算机usb端口没反应,技术编辑教您电脑usb接口没反应怎么办

近来,有好多小伙伴反应有电脑USB接口不能使用的情况,鼠标键盘通通没反应。针对电脑usb接口没反应的问题,小编整理了常见的原因以及解决方法,希望能帮助你们解决问题USB是一个外部总线标准,用于规范电脑与外部设备的连接…

计算机二级access模考软件_计算机二级考前通关大礼包来啦!各科目模考软件、视频教程,更有往年真题、最新考纲等打包送!...

掐指一算,全国计算机二级就要开考了不知道大家准备的怎么样了?没准备?这个时候就该我出场了看看为大家精心准备的计算机二级考试的干货资源吧让你的考试一次pass!本期资料包括计算机二级考试最新大纲计算机二级模考软件计算机二级…

foxpro 打印 字体_【部编版同步复习】16年级上册期中预测卷,可打印!

小语说:开学以后,不仅要认真学习,还要注意复习之前的知识点。小语给你们准备了小学语文部编版1-6年级每课一练,快来学习收藏。(点击下方蓝色字体查看完整版,可打印下载哦!)点击蓝字标题 可查看相关内容电子…

查看数据库 MySQL 的版本信息的命令语句

文章目录一、mysql -V二、登录数据库后会显示版本信息三、mysqladmin -uroot -p version四、select version()五、命令 status六、show variables like %version%一、mysql -V [roothtlwk0001host ~]# mysql -V mysql Ver 14.14 Distrib 5.7.31, for Linux (x86_64) using E…

raii_Java中的RAII

raii资源获取即初始化( RAII )是Bjarne Stroustrup用C 引入的一种设计思想,用于异常安全的资源管理。 由于垃圾回收,Java 没有此功能,但是我们可以使用try-with-resources实现类似的功能。 约翰哈德斯(Joh…

计算机应用基础本模块一测试,广东开放大学远程教育专科2018年秋计算机应用基础Word模块测试...

广东开放大学远程教育专科2018年秋计算机应用基础Word模块测试 (12页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!9.90 积分广东开放大学远程教育专科2018年秋计算机应用基础Word模块测试1. 撤销输…

蓝牙驱动卸载后自动安装_最热建筑安装工程计算表格,输入后自动生成,省时方便易上手...

最热建筑安装工程计算表格,输入后自动生成,省时方便易上手!工程量计算是每一个造价从业者必备技能。但是要保证计算过程中不能有一丝丝差错,实在是一件令人头疼的事情,因为步骤比较繁杂,并且算量大&#xf…

ssm上传文件获取路径_SSM实现图片上传下载功能

0. 基本步骤框架搭建实现带图片上传的注册功能实现下载功能1. 框架搭建Step1 创建开发项目创建基础MVC包结构:controller、service、mapper、pojoStep2 导入jar包导入SpringMVC的jar、Spring的jar、MyBatis的jar、上传文件的jarStep3 配置文件配置applicationcontex…

Linux 目录详细说明

文章目录/usr/usr/bin/usr/lib/usr/share/usr/share/man/usr/share/doc/usr/share/zoneinfo/usr/local/usr/local/lib/usr/local/src/usr/src/usr/x11r6/usr/sbin/usr/include/usr/man & /usr/doc & /usr/info/bin/etc/etc/init.d/etc/xinetd.d/etc/X11/etc/rc.d/etc/p…

笔试知识点 网络安全_安全点

笔试知识点 网络安全安全点 Java应用程序中有两个逻辑线程组: 应用程序线程执行应用程序逻辑 执行GC的线程 在执行诸如堆压缩之类的操作时,GC线程会四处移动一些对象,并且这些对象不能被任何应用程序线程使用,因为它们的物理位…

51单片机做web服务器网页,基于51单片机的嵌入式web服务器

单片机 系统设计 编程维普资讯 http://doc.xuehai.net基于 5单片机的嵌入式 w b服务器 1 e基于 5单片机的嵌入式 we服务器 1 b刘东 (南交通大学电气工程学院 )西摘要本文设计实现了一个基于 5单片机的嵌入式 WE l B服务T P I议实现的嵌入式 WE C/P协 B服务器可以使各种家电设备…