第一章中提到了一个 JDK9 才出现的小工具:jshell。要知道在之前的版本中,Java 在命令行工具这一块一直是处于缺失的,JDK9 才第一次有了命令行工具。本着没用过,就去试试看的想法,决定暂时不看第二章,而转而学习 jshell的用法。
DOC文档1(英文):
Introduction to JShellThe Java Shell tool (JShell) is an interactive tool for learning the Java programming language and prototyping Java code. JShell is a Read-Evaluate-Print Loop (REPL), which evaluates declarations, statements, and expressions as they are entered and immediately shows the results. The tool is run from the command line.
https://docs.oracle.com/javase/9/jshell/introduction-jshell.htm#JSHEL-GUID-630F27C8-1195-4989-9F6B-2C51D46F52C8DOC文档2(中文):
Java9 Shell工具(JShell) - 芒果文档https://www.imangodoc.com/12383.html
1. 进入
jshell
2. 退出
/exit
效果如下:
3. 打印
System.out.println("Hello jshell!");
4. 变量与计算
int a = 1;int b = 2;
a+b
注意,这里的这个$4 , 是对无名变量的标识,可以作为变量名来进行输出或者计算,例如:
5. 独立方法,类的使用
void show(){System.out.println(a+b);}show();class A{void show(){System.out.println(a+b);}}
new A().show();
6. 导入
可导入包查询:
/import
导入包:
import java.io.*;
7. 专属命令
查看变量:/vars
查看所有生效命令:/list
查看所有可执行命令:/help
真的使用到的情
8. 代码补全
键入部分内容后,输入TAB键,可以自动补全或者给出选择的提示,例如下例为输入"div<Tab>"的效果:
假设有多种情况,触发<Tab>代码补全会给出多个可能,例如:System.c<Tab>:
9. 自动导入
1. 输入new JFrame
2. 按下 Shift+TAB,松开(注意1和2两步是分开的,按住shift+tab后要先松开)
3.输入i,看到导入提示
4.选择要导入的选项(前面的标号1)
10. 创建变量
使用 v 命令可以进行 导入+变量补全
1. 输入new JFrame("Demo);
2. 按下 Shift+TAB,松开
3.输入v,看到 nJFrame <光标> = new JFrame("Demo");【未解之谜会多个n,不影响使用】
11. 细节补充
看到官方例子类是可以换行的,但是我自己的回车就创建了,就很疑惑:
稍微琢磨了一下,用命令行未写完的情况,括号不能提前写完,例如上面,
class B{}<Enter>这样操作相当于命令直接结束了
class C{<Enter>}<Enter>
这样就可以打多行代码
喜欢的话,点个赞吧~!平时做题,以及笔记内容将更新到公众号。
关注公众号,互相学习:钰娘娘知识汇总