Heim  >  Artikel  >  Java  >  Wie deklariere ich Referenztypen in JShell in Java 9?

Wie deklariere ich Referenztypen in JShell in Java 9?

PHPz
PHPznach vorne
2023-09-10 17:29:02681Durchsuche

在Java 9中如何在JShell中声明引用类型?

JShell 是Java 9中的一个交互式工具,允许用户输入、评估并将输出打印给用户。

与值类型不同,引用类型不直接存储其值。相反,它将存储值存储的地址。这意味着引用类型包含一个指向另一个内存位置的指针,该位置保存数据。引用类型包括String、数组、类委托

在下面的代码片段中,当我们创建一个Animal的新实例时,它可以被创建在堆内存上。 new Animal()在堆上创建一个对象。 Animal@73846619,该对象存储在地址73846619的堆上。

代码片段-1

<strong>jshell> class Animal {
   ...> }
| created class Animal

jshell> Animal dog = new Animal();
dog ==> Animal@73846619</strong>

在下面的代码片段中,两个新的Animal对象在堆上创建。它们的内存位置(引用)存储在引用变量dogcat中。在Java中,所有的类都是引用类型。除了原始变量实例外,所有实例或对象都存储在堆上。对象的引用存储在像dogcat这样的引用变量中。

代码片段-2

<strong>jshell> class Animal {
   ...>    int id;
   ...>    public Animal(int id) {
   ...>       this.id = id;
   ...>    }
   ...> }
| created class Animal

jshell> Animal dog = new Animal(10);
dog ==> Animal@6adede5

jshell> Animal cat = new Animal(20);
cat ==> Animal@5025a98f</strong>

I在下面的代码片段中,“j = I " 将“I”的值复制到“j”中。之后,当“j”的值改变时,“I”不受影响。通过使用原始变量,比较它们的值。

Snippet-3

<strong>jshell> int i = 5;
i ==> 5

jshell> int j;
j ==> 0

jshell> j = i;
j ==> 5

jshell> j = 10;
j ==> 10

jshell> i;
i ==> 5

jshell> i == j;
$11 ==> false

jshell> j = 5;
j ==> 5

jshell> i == j;
$13 ==> true</strong>

Das obige ist der detaillierte Inhalt vonWie deklariere ich Referenztypen in JShell in Java 9?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen