第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

關(guān)于在本類定義中實例化本類對象的問題

代碼

package?com.antique;

public?class?Test?{

????private?String?s?=?"123";

????public?String?getS()?{
????????return?s;
????}

????public?static?void?main(String[]?args){

????????System.out.println(new?Test().getS());
????}

}

背景

在一個類中有實例化本類對象的行為,我的理解如下:Java程序分為編譯與運行兩部分,在編譯的時候使用javac,這個時候把`Test.java`編譯成`Test.class`,在執(zhí)行到以上程序的`new Test()`時,JVM把該指令傳遞給CPU,CPU在堆空間才開辟一個具體的內(nèi)存空間用來存放一個Test對象。

問題:存放在對空間中的Test對象,其中也有一個本身自己的實例化的代碼,該代碼會不會執(zhí)行,造成類似于迭代效果的后果?

正在回答

2 回答

不會,堆中的test對象的默認值是個空值

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Antique 提問者

默認是個空值?這個不能理解
2017-08-27 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕粉095609116 回復(fù) Antique 提問者

建議你看一下類加載原理,我也是初學(xué)者,有不對的地方歡迎指正,類加載時,虛擬機會在堆中開辟一塊內(nèi)存用于存放new Test()對象,這個對象的引用在棧中開辟,也可以看做是這個對象的地址值,本代碼中通過類調(diào)用方法把s的值賦給這個對象,相當于覆蓋了這個值
2017-08-30 回復(fù) 有任何疑惑可以回復(fù)我~

什么叫類似迭代效果的后果?

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Antique 提問者

堆中的對象Test中又有一個構(gòu)造函數(shù),如此往復(fù)會不會一直構(gòu)造下去
2017-08-27 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

關(guān)于在本類定義中實例化本類對象的問題

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號