Java中的null到底是什麼?
讓我們從下面的陳述開始:
String x=null;
1. 這句話到底是什麼意思?
回想一下什麼是變數,什麼是值。
一個常見的比喻是變數類似於一個盒子。
就像您可以使用一個框來儲存某些東西一樣,您也可以使用一個變數來儲存一個值。
在宣告變數時,我們需要設定它的型別。
Java中有兩大類型別:原語型別和引用型別。
宣告為基元型別的變數儲存值;引用型別宣告的變數儲存引用。
在這種情況下,初始化語句宣告一個變數“x”。
“x”儲存字串引用。
這裡是零。
下面的視覺化將更好地理解這個概念。

如果x = "abc",則如下所示:

2. 記憶體中的null到底是什麼?
記憶體中的null到底是什麼?或者Java中的null值是什麼?
首先,null不是一個有效的物件例項,因此沒有為它分配記憶體。
它只是一個值,指示物件引用當前不引用物件。
從JVM規範:
Java虛擬機器規範不要求具體的值編碼為null。
我假設它和其他C語言一樣都是0。
3.記憶體中的x到底是什麼?
現在我們知道零是什麼。
我們知道變數是一個儲存位置和一個相關的符號名(識別符號),它包含一些值。
x在記憶體中的確切位置?
從JVM執行時資料區域的圖中,我們知道由於每個方法線上程的堆疊
中都有一個私有堆疊框架,所以本地變數位於該框架中。
為了讓學習變得輕鬆、高效,今天給大家免費分享一套Java教學資源。幫助大家在成為Java架構師的道路上披荊斬棘。需要資料的歡迎加入學習交流群:9285,05736
