一個(gè)類(lèi)只能實(shí)例化一個(gè)對(duì)象 “實(shí)例化類(lèi)對(duì)象”是什么意思?
“實(shí)例化類(lèi)對(duì)象”是什么意思?可視化一個(gè)類(lèi),通過(guò)類(lèi)的實(shí)例即對(duì)象來(lái)實(shí)現(xiàn)類(lèi)的功能。因?yàn)轭?lèi)是抽象的,所以需要實(shí)例化對(duì)象才能使用它們。如何理解實(shí)例化:創(chuàng)建子類(lèi)對(duì)象時(shí),首先創(chuàng)建父對(duì)象。這是一般的結(jié)構(gòu)(我不忍心直視
“實(shí)例化類(lèi)對(duì)象”是什么意思?
可視化一個(gè)類(lèi),通過(guò)類(lèi)的實(shí)例即對(duì)象來(lái)實(shí)現(xiàn)類(lèi)的功能。
因?yàn)轭?lèi)是抽象的,所以需要實(shí)例化對(duì)象才能使用它們。如何理解實(shí)例化:創(chuàng)建子類(lèi)對(duì)象時(shí),首先創(chuàng)建父對(duì)象。這是一般的結(jié)構(gòu)(我不忍心直視圖片)。上面的偽代碼最終將輸出子類(lèi)方法(假設(shè)該方法由父子共享)。這就是多態(tài)機(jī)制的表現(xiàn)。創(chuàng)建子類(lèi)對(duì)象時(shí),子類(lèi)構(gòu)造函數(shù)默認(rèn)調(diào)用父類(lèi)的無(wú)參數(shù)構(gòu)造方法,并調(diào)用該方法中的第一條語(yǔ)句。因此,在創(chuàng)建子類(lèi)對(duì)象時(shí),首先創(chuàng)建父對(duì)象。
“實(shí)例化類(lèi)對(duì)象”是什么意思?
可視化一個(gè)類(lèi),通過(guò)類(lèi)的實(shí)例即對(duì)象來(lái)實(shí)現(xiàn)類(lèi)的功能。因?yàn)轭?lèi)是抽象的,所以需要實(shí)例化對(duì)象才能使用它們。
Student類(lèi)是person的一個(gè)子類(lèi),因此在數(shù)據(jù)結(jié)構(gòu)上,Student不僅具有person的所有特征,即父類(lèi),而且具有自己獨(dú)特的屬性。在存儲(chǔ)區(qū)域中,學(xué)生的分布是從區(qū)域開(kāi)始的,它是父類(lèi)的所有數(shù)據(jù),然后是學(xué)生類(lèi)本身的唯一屬性。因此它們之間的關(guān)系是子類(lèi)的數(shù)據(jù)在父類(lèi)的數(shù)據(jù)之后添加了一些特征。
在這種情況下,當(dāng)我們使用一個(gè)子類(lèi)實(shí)例化一個(gè)子對(duì)象時(shí),該對(duì)象還具有父類(lèi)的所有屬性。因此,如果我們將子類(lèi)的對(duì)象轉(zhuǎn)換為父類(lèi)的對(duì)象,就完全可以了,因?yàn)樽宇?lèi)的對(duì)象具有父類(lèi)的所有屬性。
語(yǔ)句person P=new student()相當(dāng)于隱式聲明子類(lèi)對(duì)象,然后將其隱式轉(zhuǎn)換為父類(lèi)的類(lèi)型。所以這里的p應(yīng)該是父母的對(duì)象。這樣做的好處是聲明一個(gè)接口或抽象類(lèi),然后使用它的實(shí)例化對(duì)象,但是抽象類(lèi)不能直接實(shí)例化,所以需要依賴(lài)子類(lèi)來(lái)幫助。