JAVA中抽象類不可以實例化,卻可以創建數組


這是我定義的一個抽象類:

 

 

 

如果你試圖創建一個對象,當然是不行的,抽象類不能用new運算符創建對象

 

 

 

這是錯誤提示,還記得instantiate這個單詞嗎?在我的這篇隨筆第二篇(那些JAVA程序BUG中的常見單詞)中有哦。

 

 

然后你用這個抽象類去創建一個數組就會發現這卻是可以的,這是為什么呢?

 

 

首先我們要了解對象的創建(即為對象分配變量並獲得一個引用),系統遇到new+構造方法以后,就會給該對象的變量分配內存並進行初始化,然后再計算出一個引用賦給該對象。

 

而數組的創建和對象的創建基本上是一樣的只不過數組中存放的是這些元素的首地址,而在這個過程中並沒有經過上邊的對象創建的步驟只是給數組的元素指定了數據類型,規定它只能存放該類型的數據或引用。 

 

學識淺薄,如有錯誤,懇請斧正,在下不勝感激。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM