通過前面的學習我們已經(jīng)知道,類所聲明的變量被稱為對象,對象也就是變量負責存放引用,以確保對象可以操作分配給該對象的變量以及調用類中的方法,分配給對象的變量被稱作對象的實體。
例如:
Point point = new Point()
Point:類名
point:對象名稱
new Point():對象的實體
對象的引用就是存放對象的內(nèi)存地址。
注意:
在編寫程序時要避免使用空對象。
我們把沒有實體的對象稱作空對象,空對象不能使用,即不能讓一個空對象去調用方法產(chǎn)生行為。假如程序中使用了空對象,程序在運行時會出現(xiàn)異常NullPointerException。由于對象可以動態(tài)地被分配實體,所以Java編譯器對空對象不做檢查。
結論:
一個類聲明的兩個對象如果具有相同的引用,二者就具有完全相同的變量也就是實體。當程序用一個類創(chuàng)建兩個對象object1和object2后,二者的引用是不同的。
在Java中,對于同一個類的兩個對象object1和object2,允許進行如下的賦值操作:
object1 = object2;
這樣object1中存放的將是object2的值,即object2的引用,因此,object1所擁有的變量也就是實體就和object2完全一樣。
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習題和答疑,點擊了解:
一點編程也不會寫的:零基礎C語言學練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進階課程
從零到寫出一個爬蟲的Python編程課程
只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程
信息學奧賽或C++選手的 必學C++課程
藍橋杯ACM、信息學奧賽的必學課程:算法競賽課入門課程
手把手講解近五年真題的藍橋杯輔導課程