資源描述:
《JAVA基礎(chǔ)復(fù)習(xí)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、一、JAVA基礎(chǔ)1.簡述Java編譯及運(yùn)行過程首先,Java源文件(*.java)經(jīng)過Java的編譯器編譯成Java字節(jié)碼(*.class)文件;然后,進(jìn)行類加載和字節(jié)碼校驗(yàn);最后,Java字節(jié)碼經(jīng)過JVM的解釋為具體平臺的具體指令,并執(zhí)行。2.名詞解釋JVM、JRE、JDKJVM(JavaVirtualMachine)稱之為Java虛擬機(jī),JVM是一種用于計(jì)算設(shè)備的規(guī)范,它是一個(gè)虛構(gòu)出來的計(jì)算機(jī),是通過在實(shí)際的計(jì)算機(jī)上仿真模擬各種計(jì)算機(jī)功能來實(shí)現(xiàn)的。JVM屏蔽了與具體操作系統(tǒng)平臺相關(guān)的信息,使Java程序只需生成在Java虛擬機(jī)上運(yùn)行的目標(biāo)代碼(字節(jié)碼),就可以
2、在多種平臺上不加修改地運(yùn)行。JVM在執(zhí)行字節(jié)碼時(shí),實(shí)際上最終還是把字節(jié)碼解釋成具體平臺上的機(jī)器指令執(zhí)行。JRE(JavaSERuntimeEnvironment)稱之為JavaSE運(yùn)行時(shí)環(huán)境,提供了運(yùn)行Java應(yīng)用程序所必須的軟件環(huán)境,包含有Java虛擬機(jī)(JVM)和豐富的類庫(Libraries)。無論是開發(fā)Java應(yīng)用還是僅僅運(yùn)行一個(gè)已經(jīng)開發(fā)好的Java應(yīng)用都必須安裝JRE。JDK(JavaDevelopmentKit)稱為Java開發(fā)工具包,是JRE的超集,或者說JDK包含了JRE。JDK中除了包含有JRE的所有內(nèi)容之外還提供了編寫Java程序所必須的編譯器
3、和調(diào)試工具等。對于編寫Java開發(fā)的人士一般需要下載JDK,目前的主流版本為JDK6。3.變量的命名可以由字母、數(shù)字、“_”或“$”符組成,但是不能以數(shù)字開頭。中文可以作為變量名,但不提倡使用。Java大小寫敏感,即:嚴(yán)格區(qū)分大小寫,在給命名變量時(shí)需要注意。不能使用Java保留字(一些Java語言規(guī)定好的,有特殊含義的字符),如:int、if、else、for、break等。4.Unicode字符類型char事實(shí)上是一個(gè)16位無符號整數(shù)(都是正數(shù)),這個(gè)值是對應(yīng)字符的編碼,Java字符類型采用Unicode字符集編碼(通用碼、統(tǒng)一碼、萬國碼),而Unicode是世
4、界通用的定長字符集,所有的字符都是16位(2個(gè)字節(jié))來表示。5.在對char型變量賦值時(shí),可以采用如下三種方式:字符直接量:形如‘A’,變量中實(shí)際存儲的是該字符的Unicode編碼(無符號整數(shù)值),一個(gè)char型變量只能存儲一個(gè)字符。整型直接量:范圍在0~65535之間的整數(shù),變量中實(shí)際存儲的即該整數(shù)值,但表示的是該整數(shù)值所對應(yīng)的Unicode字符。Unicode形式:形如‘u0041’,Unicode字符的16進(jìn)制形式。6.不同基本類型轉(zhuǎn)換不同的基本類型直接可以相互轉(zhuǎn)化,主要有兩種方式:自動(dòng)類型轉(zhuǎn)化(隱式類型轉(zhuǎn)換):從小類型到大類型可以自動(dòng)完成。類型的大小關(guān)系
5、如下圖-3所示:圖-3強(qiáng)制轉(zhuǎn)化:從大類型到小類型需要強(qiáng)制轉(zhuǎn)換符,語法如下:(需要轉(zhuǎn)換成的類型變量因?yàn)榇箢愋偷木戎荡笥谛☆愋?,取值范圍大于小類型,所以,?dāng)使用強(qiáng)制轉(zhuǎn)化時(shí),有可能會造成精度的損失或者溢出,所以,在使用強(qiáng)制轉(zhuǎn)化時(shí)要求顯式的告訴編譯器,正在進(jìn)行強(qiáng)制轉(zhuǎn)換。7.賦值表達(dá)式本身也有值,其本身之值即為所賦之值。8.使用switch時(shí)需要注意兩個(gè)問題:第一,case后面的常量值必須不同,第二,switch后面的整型表達(dá)式的值必須是整型或字符型。從JDK7.0開始,switch-case可以支持字符串表達(dá)式,將更加方便程序的操作。switch(整型表達(dá)式){case
6、整型常量值1://入口1語句1;語句2;case整型常量值2://入口2語句3;……default://默認(rèn)入口語句n;}9.關(guān)于for循環(huán)①for的三個(gè)表達(dá)式都可以省略,但分號不能省略②表達(dá)式1和3中可以有逗號③break終止循環(huán),continue跳過循環(huán)體中的剩余語句,進(jìn)入下一次循環(huán)10.聲明數(shù)組的語法為:數(shù)據(jù)類型[]數(shù)組名=new數(shù)據(jù)類型[大小],int[]arr與intarr[]兩種寫法均可靜態(tài)初始化數(shù)組(組聲明的同時(shí)進(jìn)行初始化)int[]arr={10,23,30,-10,21};此種寫法只能用于聲明時(shí)的初始化,不能用于先聲明后賦值的情況動(dòng)態(tài)初始化數(shù)組(
7、對于已聲明的數(shù)組)int[]arr;arr=newint[]{10,23,30,-10,21};注意:new之后的[]中不可以寫長度,而元素的個(gè)數(shù)就是數(shù)組的長度。11.數(shù)組的復(fù)制System.arraycopy方法用于數(shù)組復(fù)制若想實(shí)現(xiàn)數(shù)組的復(fù)制,可以使用System.arraycopy()方法,其結(jié)構(gòu)如下:publicstaticvoidarraycopy(Objectsrc,intsrcPos,Objectdest,intdestPos,intlength)如上代碼的,每一個(gè)參數(shù)的意義見下列表:src:源數(shù)組srcPos:源數(shù)組中的起始位置dest:目標(biāo)數(shù)組de
8、stPos