在Java中使用i++時(shí)需要注意哪些問題-創(chuàng)新互聯(lián)

本篇文章為大家展示了在Java中使用i++時(shí)需要注意哪些問題,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、古丈網(wǎng)絡(luò)推廣、微信小程序定制開發(fā)、古丈網(wǎng)絡(luò)營銷、古丈企業(yè)策劃、古丈品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供古丈建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:muchs.cn

字節(jié)碼


  • Java字節(jié)碼對(duì)于虛擬機(jī),就好像匯編語言對(duì)于計(jì)算機(jī),屬于基本執(zhí)行指令。
  • 虛擬機(jī)的指令由一個(gè)字節(jié)長度的、代表著某種特定操作含義的數(shù)字(稱為操作碼,Opcode)以及跟隨其后的零至多個(gè)代表此操作所需參數(shù)(稱為操作數(shù),Operands)而構(gòu)成。由于Java虛擬機(jī)采用面向操作數(shù)棧而不是寄存器的結(jié)構(gòu),所以大多數(shù)的指令都不包含操作數(shù),只有一個(gè)操作碼。

局部變量表

局部變量表:Local Variables,被稱之為局部變量數(shù)組或本地變量表

定義為一個(gè)數(shù)字?jǐn)?shù)組,主要用于存儲(chǔ)方法參數(shù)和定義在方法體內(nèi)的局部變量,這些數(shù)據(jù)類型包括各類基本數(shù)據(jù)類型、對(duì)象引用(reference),以及returnAddress類型。

由于局部變量表是建立在線程的棧上,是線程的私有數(shù)據(jù),因此不存在數(shù)據(jù)安全問題。

局部變量表所需的容量大小是在編譯期確定下來的,并保存在方法的Code屬性的maximum local variables數(shù)據(jù)項(xiàng)中。在方法運(yùn)行期間是不會(huì)改變局部變量表的大小的。

操作數(shù)棧

操作數(shù)棧:Operand Stack ,使用數(shù)組實(shí)現(xiàn)的。

每一個(gè)獨(dú)立的棧幀除了包含局部變量表以外,還包含一個(gè)后進(jìn)先出(Last - In - First -Out)的 操作數(shù)棧,也可以稱之為 表達(dá)式棧(Expression Stack)

操作數(shù)棧,在方法執(zhí)行過程中,根據(jù)字節(jié)碼指令,往棧中寫入數(shù)據(jù)或提取數(shù)據(jù),即入棧(push)和 出棧(pop)

  • 某些字節(jié)碼指令將值壓入操作數(shù)棧,其余的字節(jié)碼指令將操作數(shù)取出棧。使用它們后再把結(jié)果壓入棧
  • 比如:執(zhí)行復(fù)制、交換、求和等操作
  • 操作數(shù)棧,主要用于保存計(jì)算過程的中間結(jié)果,同時(shí)作為計(jì)算過程中變量臨時(shí)的存儲(chǔ)空間。

接下來就是本文的正式內(nèi)容,首先,我們先給出兩個(gè)結(jié)論:

  • i++與++i在不同情況下可能會(huì)有不同的結(jié)論;
  • 實(shí)例變量/類變量的i++并不是一個(gè)原子性的操作。

首先我們看一下i++與++i的解析:

當(dāng)i++或者++i沒有涉及到其他操作時(shí),兩者是沒有區(qū)別的。

// i++
public void method1(){
 int i = 10;
 i++;
}
// ++i
public void method2(){
 int i = 10;
 ++i;
}

當(dāng)前名稱:在Java中使用i++時(shí)需要注意哪些問題-創(chuàng)新互聯(lián)
標(biāo)題來源:http://muchs.cn/article26/deihjg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司App開發(fā)、網(wǎng)站策劃品牌網(wǎng)站建設(shè)、定制網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)