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

2023年 9月 8日 76.6k 0

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

Java 9引入了一个交互式REPL(Read-Evaluate-Print-Loop)工具:JShell,它允许我们执行代码片段并立即获得结果。一个snippet是一个可以使用标准Java语法的指令。它表示一个单独的表达式、语句或声明。

在使用JShell工具时,我们需要遵循以下一些规则。

JShell工具的规则:

  • 代码片段可以是导入声明、类声明、方法声明、接口声明、字段声明、语句和主要表达式。
  • 包声明不允许。JShell代码放置在transient的JShell包下。
  • public、protected和private这些访问修饰符,以及final和static这些修饰符,在顶层声明中不允许。如果提供了这些修饰符,会被忽略并给出警告。
  • default和synchronized这些修饰符在顶层声明中根本不允许。但是,在嵌套上下文中可以允许使用。
  • abstract修饰符只能在类中允许使用。
  • 当用户输入不完整时(例如,我们只输入了System.out,并跳过了println部分),JShell自动完成API会提示用户继续输入。
  • 如果用户输入完整,但是没有分号,JShell会自动追加。

在下面的示例代码片段中,我们创建了一个Employee类,其中包含必要的getter方法,并使用new运算符进行实例化。

代码片段

jshell> class Employee {
...> private String firstName;
...> private String lastName;
...> private String designation;
...> public Employee(String firstName, String lastName, String designation) {
...> this.firstName = firstName;
...> this.lastName = lastName;
...> this.designation = designation;
...> }
...> public String getFirstName() {
...> return firstName;
...> }
...> public String getLastName() {
...> return lastName;
...> }
...> public String getDesignation() {
...> return designation;
...> }
...> public String toString() {
...> return "Name = " + firstName + ", " + lastName + " | " +
...> "designation = " + designation;
...> }
...> }
| created class Employee

jshell> Employee emp = new Employee("Sai", "Adithya", "Content Developer");
emp ==> Name = Sai, Adithya | designation = Content Developer

登录后复制

以上就是在Java 9的JShell中,我们需要遵循哪些规则呢?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论