在Java 9的JShell中,我们需要遵循哪些规则呢?

1. 简介

Java 9引入了一个新的交互式编程工具——JShell。JShell提供了一个控制台界面来编写和执行Java代码。在JShell中,我们需要遵循一些规则来完成交互式编程。本文将介绍JShell的相关规则。

2. JShell交互模式

2.1 进入JShell

在命令行窗口中输入jshell命令即可进入JShell。JShell会显示一个提示符

jshell>

2.2 JShell命令

JShell有很多命令,可以通过/来查看所有命令。

jshell> /

| Type a Java language expression, statement, or declaration.

| Or type one of the following commands:

/list [all|start]

/history [number | all]

/restart [no | yes]

/set feedback [verbose | normal | concise]

/set mode [smart | strict]

/set prompt string

/set start [#number|class|list|method|last|all|unassigned|replay:id]

/set format objects|classes|methods|vars|all|none

/set imports

/set feedback

/methods [-all]

//后面是省略的内容

其中一些常用的命令如下:

/list [all|start]:列出当前的定义。

/history [number | all]:显示或执行命令历史记录的内容。

/restart [no | yes]:重新启动JShell,丢弃所有定义。

/exit:退出JShell。

3. JShell规则

3.1 JShell表达式的定义

JShell表达式是一个完整的Java表达式。在JShell中,您可以键入表达式并立即查看结果。

JShell表达式的定义如下:

语法合法的Java表达式

变量赋值语句

声明语句

无返回值的方法调用

3.2 JShell声明的规则

在JShell中声明变量有三种方式:

使用var关键字。

使用明确类型的变量声明语法。

使用用于声明方法的语法声明局部变量,无需方法声明头。

3.3 JShell方法的规则

JShell方法的规则如下:

声明的方法必须是public访问修饰符,不得使用关键字abstract或final。

不允许使用默认(即,无参)构造函数。

不能声明递归方法。

不允许声明多个具有相同签名的方法。

方法可以具有参数(但必须指定类型)。

3.4 JShell类的规则

JShell类的规则如下:

不允许在顶级上下文中声明内部类。

必须使用完全限定名来指定引用类。

不能修改现有类的名称、包或方法签名。

在顶级上下文中声明的类必须是public的。

3.5 JShell导入的规则

JShell导入的规则如下:

任何包含在引用名称的类中的类,都不应包含在导入语句中。

您可以使用*.语法来导入一个包中的所有类:import java.util.*;

按照Java规范,静态导入不是普通导入的一种形式。

4. 总结

JShell提供了一个新的交互式编程环境,可以为Java程序员提供更好的开发体验。但是在使用JShell时,需要遵循一些规则,以确保程序的正确性。

后端开发标签