為什么——要實例化對象?


對象:屬性+方法

類是指:描述一種事物的定義,是個抽象的概念
實例指:該種事物的一個具體的個體,是具體的東西

聯系

類是現實世界或思維世界中的實體在計算機中的反映,它將數據以及這些數據上的操作封裝在一起。
對象是具有類類型的變量。類和對象是面向對象編程技術中的最基本的概念。  [1] 

類對象的關系

類是對象的抽象,而對象是類的具體實例。類是抽象的,不占用內存,而對象是具體的,占用存儲空間。類是用於創建對象的藍圖,它是一個定義包括在特定類型的對象中的方法和變量的軟件模板。


打個比方:
“人”是一個類。“張三”是人類的一個具體例子

在編程時也是同樣的道理,你先自己定義一個“類”,當你需要用時,用“類”的定義來創造一個具體的例子。

用類的定義來創建一個實例,就叫做類的實例化。

舉個很簡單的例子,你創建了一個老虎的類,老虎那么多,你咋知道是哪只老虎,等你實例化,就定位到某只老虎身上了。這只老虎就有了老虎的共同屬性,像體重啊,身長啊,顏色啊。那些屬性的屬性值就是這只老虎的特征。

 

過程
  Person p = new Person();
  1,JVM會去讀取指定路徑下的Person.class文件,並加載進內存,
    並會先加載Person的父類(如果有直接父類的情況下)
  2,在堆內存中開辟空間,分配地址。
  3,並在對象空間中,對對象中的屬性進行默認初始化
  4,調用對應的構造函數,進行初始化
  5,在構造函數中,第一行會先調用父類中的構造函數進行初始化。
  6,父類初始化完畢后,再對子類的屬性,進行顯示初始化。
  7,指定構造函數的特定初始化
  8,初始化完畢后,將堆內存中的地址值賦給引用變量。


免責聲明!

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



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