📜  jShell 中的对象大写 (1)

📅  最后修改于: 2023-12-03 15:17:04.194000             🧑  作者: Mango

jShell 中的对象大写

在Java中,对象名称通常以小写字母开头。但是,在jShell中使用的名称却是大写字母。本文将介绍jShell中的对象大写的原因,以及如何正确地使用它们。

为什么对象名称要大写?

在Java中,对象名称通常以小写字母开头,这是Java命名规范的一部分。但是在jShell中,它们被写成大写字母。

这是因为jShell中,每个表达式执行后都会自动将其结果分配给一个变量。这个变量名的命名规则与Java类名相同,即大写字母开头的驼峰式命名法。

例如,以下代码在jShell中执行:

> "Hello, jShell!"
$1 ==> "Hello, jShell!"

表达式执行后会自动将结果赋值给一个变量$1,这个变量名符合Java类名的规范。

使用jShell中的对象大写

jShell中的对象大写可以像任何其他变量一样直接使用。

例如,以下代码定义一个名为myString的变量,并将其值设置为"Hello, jShell!":

> String myString = "Hello, jShell!"
myString ==> "Hello, jShell!"

定义变量时,该变量的名称必须遵循Java中的命名规范。变量名应以大写字母开头,后面的字母应该使用驼峰式命名法。

系统定义的对象大写

jShell中还定义了一些特殊的大写对象,可以通过它们来访问jShell本身的属性和方法。

$1、$2、$3等

这些对象是jShell中最近执行的表达式的结果。每次执行表达式时,jShell会分配一个新的对象,并从$1开始递增。例如:

> 5 + 3
$1 ==> 8

> "Hello, jShell!"
$2 ==> "Hello, jShell!"

> System.out.println("Hello, jShell!")
Hello, jShell!
$3 ==> null
$4、$5、$6等

这些对象是jShell中存储的最后三个异常对象。如果你的表达式抛出了一个异常,它会存储在$4中。如果你继续抛出异常,它将被$4替换,以此类推。这些异常对象可以用于调试和分析问题。例如:

> int i = 1 / 0
|  java.lang.ArithmeticException: / by zero
|        at (#1:1)
i ==> 1

> $4
$4 ==> java.lang.ArithmeticException: / by zero
$0

这个对象是jShell自身的引用。你可以使用它来调用jShell的方法或属性。例如:

> $0.version()
$5 ==> "15.0.2"
结论

在jShell中,对象名称以大写字母开头是为了符合Java类名的规范。使用jShell对象时,应该遵循Java的命名规则,并注意每个表达式执行后的自动变量分配。通过使用jShell中的系统定义的大写对象,可以方便地访问jShell本身的属性和方法。