版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
內(nèi)存分類:棧內(nèi)存、堆內(nèi)存、寄存器、方法構造(代碼段)、池內(nèi)存棧內(nèi)存:地址、基本內(nèi)存的值(棧內(nèi)存很小,不放對象)堆內(nèi)存:對象、地址、基本內(nèi)存的值、寄存器:運算的中間值代碼段:如構造方法等的代碼池內(nèi)存:長放在內(nèi)存里面的東西放在池內(nèi)存里面(常駐內(nèi)存)Staffstaff=newStaff();執(zhí)行次序:①Staffstaff現(xiàn)在棧里面圖1-1publicclassTest{ publicstaticvoidmain(String[]args){ Staffstaff=newStaff(); staff.id="007"; ="詹姆斯.邦德"; staff.salary=10000.0F; staff.faSalary(); }}publicclassStaff{ Stringid; Stringname; floatsalary; publicvoidfaSalary(){ System.out.println(salary); }}編譯:javac-d.Hello.java運行:Javacom.tenara.Helloimport語句可以導入不同包的class文虛擬機先找棧,通過棧找到堆!垃圾回收機制回收的主要是堆內(nèi)存里面的東西。GC是怎么判斷堆內(nèi)存里面的東西已經(jīng)成為垃圾可以被回收了?GC是從棧找到堆,如果堆里面的內(nèi)容在棧里面沒有對應的地址變元,則被視為垃圾清理掉!importjava.util.Scanner;//掃描鍵盤publicclassTest2{ publicstaticvoidmain(String[]args){ Scannersc=newScanner(System.in); //掃描字符串 Stringstr=sc.next(); System.out.println("輸入了"+str); //掃描整數(shù) intaa=sc.nextInt(); System.out.println("輸入了"+aa); //掃描double doubledd=sc.nextDouble(); System.out.println("輸入了"+dd); }}Operators1、"()"優(yōu)先級高2、"="優(yōu)先級低Assignmentoperators=+=-=%=*=/=<<=>>=>>>=&=^=|=publicclassTest6{ publicstaticvoidmain(String[]arsg){ byteb1=2; byteb2=3; b1=(byte)(b1+b2);//語句1加法,轉(zhuǎn)int b1+=b2;//語句2賦值,不轉(zhuǎn)int }}b1+=b2;是否和語句b1=b1+b2完全等價?答案是否定的,上面程序中的語句1和語句2給出了證明。語句1中byte類型參與運算時要先轉(zhuǎn)換為int類型,因此要進行強制類型轉(zhuǎn)換。而語句2中,自動進行類型轉(zhuǎn)換。(我的理解:我們可以把“b11+=b2;”看做是對“b1=(byte)(b1+b2);”的優(yōu)化!)publicclassTest10{ publicstaticvoidmain(String[]args){ byteb1=100; byteb11=100; byteb2=120; b1=(byte)(b1+b2); System.out.println(b1); b11+=b2; System.out.println(b11); }}運行結(jié)果為:-36-36Comparisonoperators>>=<<=instanceofEqualityoperators==!=Arithmeticoperators+-*/%importjava.util.Scanner;publicclassTest4{ publicstaticvoidmain(String[]args){ Scannersc=newScanner(System.in); intsecond=sc.nextInt(); inthour=second/3600; intminute=second%3600/60; intsecond2=second%60; System.out.println(second+"秒="+hour+"小時" +minute+"分鐘"+second2+"秒"); }}Shiftoperators>><<>>>Bitwiseoperators&|^(按位異或)~(按位取反)Logicoperators&&(邏輯與)&||(邏輯或)|!(邏輯非)&&和&都是邏輯與,它們之間的區(qū)別:&&是短路邏輯與,有短路的效果,效率更高。||和|都是邏輯或,它們之間的區(qū)別:||是短路邏輯或,有短路的效果,效率更高。publicclassTest8{ @SuppressWarnings("unused") publicstaticvoidmain(String[]args){ inti=6; System.out.println(1>2&&(5<i++)); System.out.println(i); intj=6; System.out.println(1>2&(5<j++)); System.out.println(j); intm=6; System.out.println(2>1||(5<m++)); System.out.println(m); intn=6; System.out.println(2>1|(5<n++)); System.out.println(n); }}運行結(jié)果:false6false7true6true7Conditionaloperators?:publicclassTest9{ publicstaticvoidmain(String[]args){ inta=5; intb=3; System.out.println(a>b?a:b); System.out.println(a>b?"ok":4); }}注意第二個輸出語句中"ok"和4的類型不同,有的JDK版本可能要求條件語句中這兩個語句的類型必須相同,如果運行出錯,可以更換JDK的版本。Otheroperators++--publicclassTest5{ publicstaticvoidmain(String[]args){ inti=2; System.out.println(i++);//2 System.out.println(i);//3 inta=i+++++i;//3+5=8 System.out.println(a); System.out.println(i);//5 for(intj=0;j<1000;j++){ i=i++; } System.out.println(i);//5 }}程序分析:為什么經(jīng)過1000次循環(huán)后,i=i++;的結(jié)構仍然是5?(達內(nèi)老師講解)++的運算符優(yōu)先級高于=(賦值)運算符,i++的運算結(jié)果為5,送入寄存器,這時寄存器中存放的值為5。然后i的值變?yōu)?,繼續(xù)執(zhí)行賦值語句,賦值時,把寄存器中的值賦5值給i,因此i的值是在5和6之間來回切換的!(我的理解)++的運算符優(yōu)先級高于=(賦值)運算符,因此這個表達式的執(zhí)行順序如下:①運算i++這個表達式的結(jié)果為5。---->②i的值自加1(i++先參與運算,再自加1),即i的值變?yōu)?。---->③將i++這個表達式的值,即第①部的結(jié)果賦值給變量i。("="表達式是將右邊表達式的值賦值與左邊的變量,因此是將5賦于i,而不是將6賦于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鍋爐本體檢修工安全教育模擬考核試卷含答案
- 調(diào)理肉制品加工工安全實操競賽考核試卷含答案
- 植保機械操作工安全生產(chǎn)基礎知識模擬考核試卷含答案
- 廢礦物油再生處置工沖突管理知識考核試卷含答案
- 金箔制作工安全培訓效果強化考核試卷含答案
- 氯甲烷生產(chǎn)工安全素養(yǎng)水平考核試卷含答案
- 硫回收裝置操作工達標水平考核試卷含答案
- 皮具制作工崗前核心管理考核試卷含答案
- 纖維碳化裝置操作工安全意識強化模擬考核試卷含答案
- 2024年畢節(jié)醫(yī)學高等??茖W校輔導員考試筆試真題匯編附答案
- 2026年冀教版初一地理上冊期末真題試卷+解析及答案
- 2026年孝昌縣供水有限公司公開招聘正式員工備考題庫及答案詳解參考
- 2025年文化產(chǎn)業(yè)版權保護與運營手冊
- 四川省樂山市高中高三上學期第一次調(diào)查研究考試數(shù)學試題【含答案詳解】
- 《創(chuàng)新創(chuàng)業(yè)基礎》課件-項目1:創(chuàng)新創(chuàng)業(yè)基礎認知
- 2026年初一寒假體育作業(yè)安排
- 物流行業(yè)運輸司機安全駕駛與效率績效評定表
- 2026北京市通州區(qū)事業(yè)單位公開招聘工作人員189人筆試重點基礎提升(共500題)附帶答案詳解
- 2025~2026學年山東省菏澤市牡丹區(qū)第二十一初級中學八年級上學期期中歷史試卷
- 2026國家統(tǒng)計局儀征調(diào)查隊招聘輔助調(diào)查員1人(江蘇)考試參考試題及答案解析
- 水利工程施工質(zhì)量檢測方案
評論
0/150
提交評論