版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2.1標(biāo)識(shí)符與數(shù)據(jù)類型
2.2常量與變量
2.3語句、表達(dá)式和運(yùn)算符
2.4數(shù)據(jù)類型之間的轉(zhuǎn)換
2.5注釋
2.6關(guān)鍵字
2.7Java編碼規(guī)范與編碼格式2.1標(biāo)識(shí)符與數(shù)據(jù)類型2.1.1標(biāo)識(shí)符在程序設(shè)計(jì)語言中存在的任何一個(gè)成分(如變量、常量、屬性、方法、類、接口等)都需要有一個(gè)名字表示,這個(gè)名字就是標(biāo)識(shí)符。也可以說,程序員對(duì)程序中的每個(gè)成分命名時(shí)使用的命名符號(hào)就是標(biāo)識(shí)符(identifier)。Java語言中,標(biāo)識(shí)符是以字母、下劃線(_)、美元符(?$?)開始的一個(gè)字符序列,后面可以跟字母、下劃線、美元符和數(shù)字,如圖2.1所示。標(biāo)識(shí)符是大小寫敏感的,即要區(qū)分大小寫,也就是說Class與class是不同的。2.1.2數(shù)據(jù)類型Java語言的數(shù)據(jù)類型有簡(jiǎn)單類型和復(fù)合類型(用戶根據(jù)需要用基本數(shù)據(jù)類型經(jīng)過組合而形成的類型)。簡(jiǎn)單數(shù)據(jù)類型包括以下八種:整數(shù)類型(Integer):byte、short、int、long。浮點(diǎn)類型(Floating):float、double。字符類型(Textual):char。布爾類型(Logical):boolean。1.整型數(shù)據(jù)(1)整型常量:十進(jìn)制整數(shù)。如:123,-456,0。八進(jìn)制整數(shù)。以0開頭,如0123表示十進(jìn)制數(shù)83,-011表示十進(jìn)制數(shù)?-9。十六進(jìn)制整數(shù)。以0x或0X開頭,如0x123表示十進(jìn)制數(shù)291,-0X12表示十進(jìn)制數(shù)?-18。(2)整型變量如表2.1所示。2.浮點(diǎn)型(實(shí)型)數(shù)據(jù)(1)實(shí)型常量:十進(jìn)制數(shù)形式。由數(shù)字和小數(shù)點(diǎn)組成,且必須有小數(shù)點(diǎn),如0.123,1.23,123.0??茖W(xué)計(jì)數(shù)法形式。如:123e3或123E3,其中e或E之前必須有數(shù)字,且e或E后面的指數(shù)必須為整數(shù)。?float型的值,必須在浮點(diǎn)常量后加f或F,如1.23f。浮點(diǎn)常量后不加任何字符或加D或加d表示雙精度數(shù),即double型的值。(2)實(shí)型變量如表2.2所示。3.字符型數(shù)據(jù)(1)字符型常量:字符型常量是用單引號(hào)括起來的一個(gè)字符,如?'a'、'A'。(2)字符型變量:類型為char,它在機(jī)器中占16位,其范圍為0~65?535。字符型變量的定義如下:charc='a'; /*指定變量c為char型,且賦初值為?'a'*/4.布爾型數(shù)據(jù)布爾型數(shù)據(jù)只有兩個(gè)值true和false,且它們不對(duì)應(yīng)于任何整數(shù)值。布爾型變量的定義:booleanb=true;與C++?不同,true和false不對(duì)應(yīng)于1和0。2.2常?量?與?變?量2.2.1常量常量有字面(Literal)常量和符號(hào)常量?jī)煞N形式。1.字面常量字面常量是指其數(shù)值意義如同字面所表示的一樣,有各種數(shù)據(jù)類型的常量,還有字符串常量。其中,字符型常量是用引號(hào)括起的單個(gè)字符,字符串常量是用雙引號(hào)括起的零個(gè)或多個(gè)字符串序列。用單引號(hào)括起的還有轉(zhuǎn)義字符,如回車、換行等。Java的轉(zhuǎn)義字符用反斜杠“\”開頭,后面跟一個(gè)字母來表示某個(gè)特定的控制符。2.符號(hào)常量符號(hào)常量是用Java標(biāo)識(shí)符表示的一個(gè)常量,用保留字final來實(shí)現(xiàn),符號(hào)常量定義的一般格式如下:finaltypeSpecifiervarName=value[,varName[=value]…];<final><數(shù)據(jù)類型><符號(hào)常量標(biāo)識(shí)符>=<常量值>;2.2.2變量變量是Java程序中的基本存儲(chǔ)單元,它包括變量名、變量類型和作用域三部分。電腦一般使用內(nèi)存來記憶計(jì)算時(shí)所使用的數(shù)據(jù),內(nèi)存空間與變量的關(guān)系可由入住旅館的過程來說明。旅館入住時(shí)對(duì)房間的需求各不相同,應(yīng)根據(jù)需求為旅客分配房間類型,指定房間號(hào),旅客才能順利入??!同樣,數(shù)據(jù)各式各樣,要先根據(jù)數(shù)據(jù)的需求(即類型)為它申請(qǐng)一塊合適的內(nèi)存空間,再給這塊內(nèi)存空間指定一個(gè)變量名,這樣才能正常訪問數(shù)據(jù)存儲(chǔ)的位置,兩個(gè)過程的對(duì)應(yīng)如圖2.3所示。使用變量的步驟如下:第一步:聲明變量,即“根據(jù)數(shù)據(jù)類型在內(nèi)存申請(qǐng)空間”。第二步:賦值,即“將數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的內(nèi)存空間”。說明:第一步和第二步可以合并。第三步:使用變量,即“取出數(shù)據(jù)使用”。使用變量時(shí),可能會(huì)出現(xiàn)以下常見錯(cuò)誤:(1)變量未賦值,如圖2.4所示的運(yùn)行代碼及結(jié)果。(2)變量名命名不符合要求,如圖2.5所示的運(yùn)行代碼及結(jié)果。(3)變量名重名,如圖2.6所示的運(yùn)行代碼及結(jié)果。2.2.3變量的作用域Java語言所處理的任何對(duì)象(變量、標(biāo)識(shí)符常量、類、實(shí)例等)都遵從先聲明后使用的原則。聲明的作用有兩點(diǎn):一是確認(rèn)對(duì)象的標(biāo)識(shí)符,以便系統(tǒng)為它指定存儲(chǔ)地址和識(shí)別它,這是“按名訪問”的原則;二是為該對(duì)象指定數(shù)據(jù)類型,以便系統(tǒng)為它分配足夠的存儲(chǔ)單元。變量經(jīng)聲明后,便可以對(duì)它進(jìn)行賦值和使用,若使用前沒有賦值,則在編譯時(shí)會(huì)指出語法錯(cuò)誤。這也是Java語言安全性的體現(xiàn)。變量的作用域指明可訪問該變量的一段代碼,聲明一個(gè)變量的同時(shí)也就指明了變量的作用域。按作用域來分,變量可以有:局部變量、類變量(也稱成員變量)、方法參數(shù)和異常處理參數(shù)。在一個(gè)確定的域中,變量名應(yīng)該是唯一的。局部變量在方法或方法的一個(gè)塊代碼中聲明,則它的作用域?yàn)樗诘拇a塊(整個(gè)方法或方法中的某塊代碼)。類變量在類中聲明,而不是在類的某個(gè)方法中聲明,則它的作用域是整個(gè)類。方法參數(shù)傳遞給方法,它的作用域就是這個(gè)方法。異常處理參數(shù)傳遞給異常處理代碼,它的作用域就是異常處理部分。2.2.4變量的默認(rèn)值若不給變量賦初值,則變量默認(rèn)值如表2.3所示。2.3語句、表達(dá)式和運(yùn)算符2.3.1賦值運(yùn)算符與賦值表達(dá)式Java語言中,賦值運(yùn)算符是“=”,左邊必須是變量。在賦值運(yùn)算符“=”之前加上其他運(yùn)算符,則構(gòu)成復(fù)合賦值運(yùn)算符,如“=”、“+=”、“-=”、“*=”、“/=”都是賦值運(yùn)算符。復(fù)合賦值運(yùn)算符如表2.4所示。2.3.2語句語句是程序的基本執(zhí)行單位,一個(gè)程序由若干條語句組成。Java語言的語句,在其末尾有一個(gè)分號(hào)“;”作為標(biāo)記,其語法和語義與C和C++?中的很相似,但有一個(gè)例外,goto語句被取消了。Java語言的語句可分為四大類:聲明語句、表達(dá)式語句、流程控制語句和異常處理語句。也有文獻(xiàn)或教材將Java語言的語句分為簡(jiǎn)單語句和復(fù)合語句。簡(jiǎn)單語句是語句的基本構(gòu)建塊;復(fù)合語句是那些包含其他語句的語句。簡(jiǎn)單語句包括表達(dá)式語句、局部變量聲明、break語句、continue語句和return語句。復(fù)合語句包括語句塊、選擇語句、循環(huán)語句以及執(zhí)行語句。2.3.3算術(shù)運(yùn)算符算術(shù)運(yùn)算符是指能夠進(jìn)行算術(shù)運(yùn)算的符號(hào),它有:+、-、*、/、%?(取余數(shù))、++?(自增1)、--?(自減1)、-?(取反)。2.3.4關(guān)系運(yùn)算符關(guān)系運(yùn)算符是指能夠?qū)\(yùn)算數(shù)進(jìn)行關(guān)系運(yùn)算的符號(hào),共有6個(gè),即?>、<、>=、<=、==、!=。利用關(guān)系運(yùn)算符連接的式子稱為關(guān)系表達(dá)式。關(guān)系運(yùn)算實(shí)際上就是常說的比較運(yùn)算,結(jié)果是邏輯值(true或false)。2.3.5邏輯運(yùn)算符邏輯運(yùn)算符是指能夠進(jìn)行邏輯運(yùn)算的符號(hào),即邏輯非(!)、邏輯與(&&)、邏輯或(||)。它與關(guān)系運(yùn)算符的不同之處是關(guān)系運(yùn)算符的運(yùn)算結(jié)果是布爾值,而邏輯運(yùn)算的運(yùn)算數(shù)和運(yùn)算結(jié)果都是布爾值。2.3.6位運(yùn)算符位運(yùn)算是對(duì)整數(shù)的二進(jìn)制表示的每一位進(jìn)行操作,位運(yùn)算的操作數(shù)和結(jié)果都是整型量。位運(yùn)算符包括右移(>>)、左移(<<)、不帶符號(hào)的右移(>>>)、位與(&)、位或(?|?)、位異或(?^?)、位反(?~?)。2.3.7其他運(yùn)算符其他運(yùn)算符包括條件運(yùn)算符(?:)、分量運(yùn)算符(·)、下標(biāo)運(yùn)算符([])、實(shí)例運(yùn)算符(instanceof)、內(nèi)存分配運(yùn)算符(new)、強(qiáng)制類型轉(zhuǎn)換運(yùn)算符(類型)、方法調(diào)用運(yùn)算符(())等。條件運(yùn)算符是Java中唯一的一個(gè)三元運(yùn)算符,其使用格式如下:布爾表達(dá)式?結(jié)果表達(dá)式1:結(jié)果表達(dá)式2;在實(shí)際應(yīng)用中,常常將條件運(yùn)算符與賦值運(yùn)算符結(jié)合起來構(gòu)成賦值表達(dá)式。2.3.8運(yùn)算符的優(yōu)先級(jí)(1)不同類型數(shù)據(jù)間的優(yōu)先關(guān)系如下:低------------------------------------------->高byte、short、char→int→long→float→double(2)運(yùn)算符的優(yōu)先次序。表達(dá)式的運(yùn)算按照運(yùn)算符的優(yōu)先順序從高到低進(jìn)行,同級(jí)運(yùn)算符從左到右進(jìn)行,如表2.5所示。2.4數(shù)據(jù)類型之間的轉(zhuǎn)換2.4.1自動(dòng)類型轉(zhuǎn)換整型、實(shí)型、字符型數(shù)據(jù)可以混合運(yùn)算。運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型,即把精度較低的類型轉(zhuǎn)換為精度較高的類型,然后進(jìn)行運(yùn)算,這種轉(zhuǎn)換稱為自動(dòng)類型轉(zhuǎn)換,如表2.6所示。int類型的常量可以直接賦值給byte、short、char類型的變量。2.4.2強(qiáng)制類型轉(zhuǎn)換高級(jí)數(shù)據(jù)要轉(zhuǎn)換成低級(jí)數(shù)據(jù),需要用到強(qiáng)制類型轉(zhuǎn)換,如下:inti;byteb=(byte)i; /*把int型變量i強(qiáng)制轉(zhuǎn)換為byte型*/轉(zhuǎn)換格式:(類型名)表達(dá)式強(qiáng)制類型轉(zhuǎn)換只是得到一個(gè)所需類型的中間變量,原來變量的類型并不發(fā)生變化。boolean類型的數(shù)據(jù)不能進(jìn)行自動(dòng)和強(qiáng)制類型轉(zhuǎn)換。2.4.3表達(dá)式的類型轉(zhuǎn)換如果要進(jìn)行強(qiáng)制類型轉(zhuǎn)換的對(duì)象不是單個(gè)數(shù)據(jù)或變量,而是一個(gè)包含多項(xiàng)的表達(dá)式,則表達(dá)式必須用括號(hào)括起來,否則結(jié)果有誤。轉(zhuǎn)換格式:(類型名)(表達(dá)式)2.5注釋Java程序里主要有兩種類型的注釋。第一種是傳統(tǒng)的、C語言風(fēng)格的注釋,是從C++繼承而來的。這些注釋用一個(gè)“/*”起頭,隨后是注釋內(nèi)容,并可跨越多行,最后用一個(gè)“*/”結(jié)束,這種注釋方法叫做“多行注釋”。注意:許多程序員為閱讀方便,在連續(xù)注釋內(nèi)容的每一行都用一個(gè)“*”開頭,所以經(jīng)常能看到像下面這樣的注釋:/*這是*一段注釋,*它跨越了多個(gè)行*/但請(qǐng)記住,進(jìn)行編譯時(shí),“/*”和“*/”之間的內(nèi)容都會(huì)被忽略,所以上述注釋與下面這段注釋并沒有什么不同:/*這是一段注釋,它跨越了多個(gè)行*/第二種類型的注釋也起源于C++。這種注釋叫做“單行注釋”,以一個(gè)“//”起頭,表示這一行的所有內(nèi)容都是注釋。這種類型的注釋更常用,因?yàn)樗鼤鴮憰r(shí)更方便。沒有必要在鍵盤上尋找“/”,再尋找“*”(只需按兩次同樣的鍵),而且不必在注釋結(jié)尾時(shí)加一個(gè)結(jié)束標(biāo)記。下面便是這類注釋的一個(gè)例子://這是一條單行注釋運(yùn)行代碼如圖2.10所示。還有一種注釋是多行注釋的變形,叫做“文檔注釋”,格式如下:/***/運(yùn)行代碼如圖2.11所示??捎胘avadoc.exe提取程序文件中的文檔注釋來制作HTML幫助文件。2.6關(guān)鍵字關(guān)鍵字又稱為保留字,它具有專門的意義和用途,不能當(dāng)作一般的標(biāo)識(shí)符使用。下面這些標(biāo)識(shí)符是Java語言中的所有保留字:abstractbreakbytebooleancatchcaseclasscharcontinuedefaultdoubledoelseextendsfalsefinalfloatforfinallyifimportimplementsintinterfaceinstanceoflonglengthnativenewnullpackageprivateprotectedpublicreturnswitchsynchronizedshortstaticsupertrytruethisthrowthrowsthreadsafetransientvoidwhileJava語言中的保留字均用小寫字母表示。2.7Java編碼規(guī)范與編碼格式一個(gè)完整的Java源程序應(yīng)該包括下列部分:package語句; //該部分至多只有一句,必須放在源程序的第一句import語句; /*該部分可以有若干import語句或者沒有,必須放在所有的類定義之前*/publicclassDefinition; //公共類定義部分,至多只有一個(gè)公共類的定義//Java語言規(guī)定該Java源程序的文件名必須與該公共類名完全一致classDefinition; //類定義部分,可以有0個(gè)或者多個(gè)類定義interfaceDefinition; //接口定義部分,可以有0個(gè)或者多個(gè)接口定義package語句:由于Java編譯器為每個(gè)類生成一個(gè)字節(jié)碼文件,且文件名與類名相同,因此同名的類有可能發(fā)生沖突。為了解決這一問題,Java提供包來管理類名空間,包實(shí)際提供了一種命名機(jī)制和可見性限制機(jī)制。而在Java的系統(tǒng)類庫(kù)中,把功能相似的類放到一個(gè)包(Package)中。例如,所有的圖形界面的類都放在Java.awt這個(gè)包中,與網(wǎng)絡(luò)功能有關(guān)的類都放到這個(gè)包中。用戶自己編寫的類(指.class文件)也應(yīng)該按照功能放在由自己命名的相應(yīng)的包中。包在實(shí)際的實(shí)現(xiàn)過程中是與文件系統(tǒng)相對(duì)應(yīng)的,如javawork.helloworld所對(duì)應(yīng)的目錄是path\javawork\helloworld,而path是在編譯該源程序時(shí)指定的。比如在命令行中編譯上述HelloWorldApp.java文件時(shí),可以在命令行中輸入“javac-df:\javaprojectHelloWorldApp.java”,則編譯生成的HelloWorldApp.class文件將放在目錄f:\javaproject\javawork\helloworld\目錄下面,此時(shí)f:\javaprojcet相當(dāng)于path。但是如果在編譯時(shí)不指定path,則生成的?.class文件將放在編譯時(shí)命令行所在當(dāng)前目錄的下面。比如在命令行目錄f:\javaproject下輸入編譯命令“javacHelloWorldApp.java”,則生成的HelloWorldApp.class文件將放在目錄f:\javaproject下面,此時(shí)的package語句沒起作用。但是,如果程序中包含了package語句,則在運(yùn)行時(shí)就必須包含包名。例如,HelloWorldApp.java程序的第一行語句是packagep1.p2;編譯的時(shí)候在命令行下輸入“javac-dpathHelloWorldApp.java”,則HelloWorldApp.class將放在目錄path\p1\p2的下面,這時(shí)候運(yùn)行該程序時(shí)有以下兩種方式。第一種:在命令行下的path目錄下輸入字符“javap1.p2.HelloWorldApp”。第二種:在環(huán)境變量classpath中加入目錄path,則運(yùn)行時(shí)在任何目錄下輸入“javap1.p2.HelloWorldApp”即可。import語句:如果在源程序中用到了除java.lang這個(gè)包以外的類,無論是系統(tǒng)的類還是自己定義的包中的類,都必須用import語句標(biāo)識(shí),以便通知編譯器在編譯時(shí)找到相應(yīng)的類文件。例如,上例中的java.awt是系統(tǒng)的包,而javawork.newcentury是用戶自定義的包。比如程序中用到了類Button,而Button是屬于包java.awt的,在編譯時(shí)編譯器將從目錄classpath\java\awt中去尋找類Button,classpath是事先設(shè)定的環(huán)境變量,如可以設(shè)為classpath=.;d:\jdk1.3\lib\。classpath也可以稱為類路徑,需要提醒大家注意的是,在classpath中往往包含多個(gè)路徑,用分號(hào)隔開。例如,classpath=.;d:\jdk1.3\lib\中的第一個(gè)分號(hào)之前的路徑是一個(gè)點(diǎn),表示當(dāng)前目錄,分號(hào)后面的路徑是d:\jdk1.3\lib\,表示系統(tǒng)的標(biāo)準(zhǔn)類庫(kù)目錄。在編譯過程中尋找類時(shí),先從環(huán)境變量classpath的第一個(gè)目錄開始往下找,如先從當(dāng)前目錄往下找java.awt中的類Butto
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45147-2024道路車輛總質(zhì)量大于3.5 t的車輛氣制動(dòng)系統(tǒng)試驗(yàn)使用滾筒制動(dòng)試驗(yàn)臺(tái)獲取和使用參考值
- 教科版八年級(jí)物理上冊(cè)《2.3物體運(yùn)動(dòng)的速度》同步測(cè)試題及答案
- 新人教版八年級(jí)數(shù)學(xué)上冊(cè)導(dǎo)學(xué)案
- 安全生產(chǎn)目標(biāo)責(zé)任書考核記錄
- 2024.11.15推文-Mouse IL-4、IFN-γ誘導(dǎo)巨噬細(xì)胞M1M2極化文獻(xiàn)解讀
- 2024高中地理第六章人類與地理環(huán)境的協(xié)調(diào)發(fā)展第2節(jié)中國(guó)的可持續(xù)發(fā)展實(shí)踐練習(xí)含解析新人教版必修2
- 2024高中生物第2章動(dòng)物和人體生命活動(dòng)的調(diào)節(jié)第1節(jié)通過神經(jīng)系統(tǒng)調(diào)節(jié)課堂演練含解析新人教版必修3
- 2024高中語文第三課神奇的漢字第2節(jié)規(guī)矩方圓-漢字的簡(jiǎn)化和規(guī)范訓(xùn)練含解析新人教版選修語言文字應(yīng)用
- 2024高考地理一輪復(fù)習(xí)第八章第2講世界主要農(nóng)業(yè)地域類型教案含解析新人教版
- 2024高考化學(xué)一輪復(fù)習(xí)第4章非金屬及其化合物專題講座二常見氣體的實(shí)驗(yàn)室制備凈化和收集精練含解析
- 2024年山東省生態(tài)環(huán)境監(jiān)測(cè)專業(yè)技術(shù)人員大比武理論試題庫(kù)(含答案)
- JTJ073.1-2001 公路水泥混凝土路面 養(yǎng)護(hù)技術(shù)規(guī)范
- 2024年互聯(lián)網(wǎng)公司勞動(dòng)合同樣本(二篇)
- 醫(yī)療器械售后服務(wù)能力證明資料模板
- 中考物理總復(fù)習(xí)《力學(xué)的綜合計(jì)算》專項(xiàng)檢測(cè)卷(帶答案)
- AQ 1029-2019 煤礦安全監(jiān)控系統(tǒng)及檢測(cè)儀器使用管理規(guī)范
- 未成年旅游免責(zé)協(xié)議書
- 預(yù)防保健科主任競(jìng)聘課件
- 團(tuán)隊(duì)成員介紹
- 水泵行業(yè)銷售人員工作匯報(bào)
- 《流感科普宣教》課件
評(píng)論
0/150
提交評(píng)論