透過前面的學習我們已經知道,類別所宣告的變數稱為對象,物件也就是變數負責存放引用,以確保物件可以操作分配給該物件的變數以及呼叫類別中的方法,分配給物件的變數被稱作對象的實體。
例如:
Pointpoint=newPoint()
Point:類別名稱
point:物件名稱
new Point():物件的實體
物件的引用就是存放物件的記憶體位址。
注意:
在編寫程式時要避免使用空物件。
我們把沒有實體的物件稱為空對象,空物件不能使用,也就是不能讓一個空對象去呼叫方法產生行為。假如程式中使用了空對象,程式在執行時會出現異常NullPointerException。由於物件可以動態地被指派實體,所以Java編譯器對空物件不做檢查。
結論:
一個類別宣告的兩個物件如果有相同的引用,二者就具有完全相同的變數也就是實體。當程式用一個類別建立兩個物件object1和object2後,二者的參考是不同的。
在Java中,對於同一個類別的兩個物件object1和object2,允許進行如下的賦值操作:
object1=object2;
這樣object1中存放的將是object2的值,也就是object2的引用,因此,object1所擁有的變數也就是實體就和object2完全一樣。