null有哪些常见含义?(Java中null到底是什么意思?)



让我们从以下语句开始:

1.这句话到底是什么意思?

回想一下什么是变量,什么是值。

一个常见的比喻是,一个变量类似于一个盒子。

就像你可以用一个盒子来存储一些东西一样,你也可以用一个变量来存储一个值。

当声明一个变量时,我们需要设置它的类型。

Java中有两大类型:原语类型和引用类型。

声明为基元类型的变量存储值;由引用类型声明的变量存储引用。

在这种情况下,初始化语句声明一个变量“x”。

“x”存储一个字符串引用。

这里是零。

下面的可视化会更好的理解这个概念。

如果x='abc ',则如下:

2.什么是内存中的null?

内存中到底什么是null?或者说Java中的null值是什么?

首先,null不是有效的对象实例,因此没有为它分配内存。

它只是一个值,表示对象引用了当前未被引用的对象。

来自JVM规范:

Java虚拟机规范不要求特定值代码为空。

我假设它和其他C语言一样是0。

3.内存中的X是什么?

现在我们知道零是什么了。

我们知道一个变量是一个存储位置和一个相关的符号名(标识符),其中包含一些值。

x在内存中的确切位置?

从JVM运行时数据区的图中,我们知道每个方法在线程的堆栈中都有一个私有的堆栈框架,所以局部变量就位于这个框架中。

您可能还会对下面的文章感兴趣: