让我们从以下语句开始:
1.这句话到底是什么意思?
回想一下什么是变量,什么是值。
一个常见的比喻是,一个变量类似于一个盒子。
就像你可以用一个盒子来存储一些东西一样,你也可以用一个变量来存储一个值。
当声明一个变量时,我们需要设置它的类Baxter网络类型。
Java中有两种类型:原语类型和引用类型。
声明为基元类型的变量存储值;引用类型声明的变量存储引(原创www.isoyu.com版权)用。
在这种情况下,初始化语句声明了一个变量“x”。
“x”存储一个字符串引用。
这是最佳网络零点。
下面的可视化将更好地理解这个概念。
如果x =“ABC & quot;,如下图所示:
2.什么是内存中的null?
内存中到底什么是null?或者说Java中的null值是什么?
首先,null不是有效的对象实例,因此没有为其分配内存。
它只是一个值,表示对象引用了当前未被引用的对象。
来自JVM规范:
Java虚拟机规范最佳网络不要求特定值代码为空。
我假设它像其他C语言一样是0。
3.记忆中的X是什么?
现在我们知道零是什么了。
我们知道变量是一个存储位置和一个相关的符号名(标识符),其中包含一些值。
x在内存中的确切位置?
从JVM运行时数据区的图中,我们知道每个方法在线程堆栈中都有一个私有堆栈框架,所以局部变量就位于这个框架中。