您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎么在java中創(chuàng)建一個(gè)對(duì)象,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
Java主要應(yīng)用于:1. web開(kāi)發(fā);2. Android開(kāi)發(fā);3. 客戶(hù)端開(kāi)發(fā);4. 網(wǎng)頁(yè)開(kāi)發(fā);5. 企業(yè)級(jí)應(yīng)用開(kāi)發(fā);6. Java大數(shù)據(jù)開(kāi)發(fā);7.游戲開(kāi)發(fā)等。
1、檢查類(lèi)是否加載。
當(dāng)虛擬機(jī)遇到new指令時(shí),首先檢查該指令的參數(shù)能否在常量池中定位為一個(gè)類(lèi)別的符號(hào)引用,檢查該符號(hào)引用代表的類(lèi)別是否加載、分析和初始化。否則,執(zhí)行類(lèi)加載過(guò)程。
2、為目標(biāo)分配內(nèi)存。
類(lèi)加載完成后,虛擬機(jī)開(kāi)始為目標(biāo)分配存儲(chǔ)器,此時(shí)確定了所需存儲(chǔ)器的大小。只需在堆上分配必要的內(nèi)存即可。
3、為分配的存儲(chǔ)空間初始化零值。
對(duì)象的存儲(chǔ)器分配完成后,對(duì)象的存儲(chǔ)器空間需要初始化為零,保證對(duì)象即使沒(méi)有初始值,也可以直接使用。
4、對(duì)受眾進(jìn)行其他設(shè)置。
分配內(nèi)存空間,初始化零值后,虛擬機(jī)還需要對(duì)對(duì)象進(jìn)行其他必要的設(shè)置,設(shè)置場(chǎng)所在對(duì)象頭部,包括該對(duì)象所屬類(lèi)、類(lèi)元數(shù)據(jù)信息、對(duì)象hashcode、GC代理年齡等信息。
5、執(zhí)行init方法。
執(zhí)行上述步驟后,即使虛擬機(jī)中的對(duì)象成功,Java程序也需要實(shí)施init方法,因?yàn)榇藭r(shí)的對(duì)象只是初始化的零值,沒(méi)有真正根據(jù)程序中的代碼分配初始值,所以調(diào)用init方法后,這個(gè)對(duì)象真的可以使用。
關(guān)于怎么在java中創(chuàng)建一個(gè)對(duì)象就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。