




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第二講 Java語言基礎(chǔ),任何程序設(shè)計(jì)語言,都是由語言規(guī)范和一系列開發(fā)庫組成的。如標(biāo)準(zhǔn)C,除了語言規(guī)范外,還有很多函數(shù)庫;MS Visual C+更是提供了龐大的APIs和MFC。 Java語言也不例外,也是由Java語言規(guī)范和Java開發(fā)包組成的。 學(xué)習(xí)任何程序設(shè)計(jì)語言,都是要從這兩方面著手,尤其是要能夠熟練地使用后者。,1、Java語言基本元素 2、Java數(shù)據(jù)類型 3、Java語言結(jié)構(gòu) 4、Java控制語句,主要內(nèi)容,語言規(guī)范,標(biāo)識符(Identifier) 保留字(Reserved Word ),1、Java語言基本元素,程序員對程序中的各個元素加以命名時(shí)使用的命名記號稱為標(biāo)識符(id
2、entifier)包括:類名、變量名、常量名、方法名、 Java語言中,標(biāo)識符是以字母,下劃線(_),美元符($)開始的一個字符序列,后面可以跟字母,下劃線,美元符,數(shù)字。 合法的標(biāo)識符 identifier userName User_Name _sys_value $change 非法的標(biāo)識符 2mailroom#class,1、Java語言基本元素 標(biāo)識符,具有專門的意義和用途,不能當(dāng)作一般的標(biāo)識符使用,這些標(biāo)識符稱為保留字(reserved word)。 abstract break byte boolean catch case class char continue default
3、 double do else extends false final float for finallyif import implements int interface instanceof long length native new null package private protected public final return switch synchronized short static super try true this throw throws threadsafe transient void while,1、Java語言基本元素 保留字,數(shù)據(jù)和返回值類型:int
4、, void, return 包/類/成員/接口:package, class, interface 訪問控制:public, private, protected 循環(huán)及循環(huán)控制:if, switch, break 例外處理:throw, try, finally 保留詞(無含義但不能使用):goto, const,1、Java語言基本元素 保留字:基本分類,在Java中,true、false和null都是小寫的。區(qū)別于C+中大寫的TRUE、FALSE和NULL。 不必死記這些關(guān)鍵詞,當(dāng)理解每個關(guān)鍵詞的含義后,自然就記住了所有的關(guān)鍵詞。,1、Java語言基本元素 保留字:注意事項(xiàng),2、Jav
5、a數(shù)據(jù)類型,常量(Constant) 變量(Variable) 數(shù)據(jù)類型(Data Type) 基本數(shù)據(jù)類型(Primary Data Types) 復(fù)合數(shù)據(jù)類型(Composite Data Types),Java中 的 常 量 值 是 用 文 字 串 表 示 的,它 區(qū) 分 為 不 同 的 類 型,如 整 型 常 量 123,實(shí) 型 常 量 1.23,字 符 常 量 a ,布 爾 常 量 true、false以 及 字 符 串 常 量 This is a constant string.。 與 C、 C+不 同,Java中 不 能 通 過 #define命 令 把 一 個 標(biāo) 識 符 定
6、義 為 常 量,而 是 用 關(guān) 鍵 字 final來 定義,其定義格式為: final Type varName = value , varName =value ; final int globalAccount = 100, nationalAccount = 50; final double PI=3.14159,2、Java數(shù)據(jù)類型 常量,程序中的基本存儲單元,其定義包括變量名、變量類型和作用域幾個部分,定義格式為: Type varName = value , varName =value; int n = 3, n1 = 4; Java中變量的缺省初值都是確定的: 布爾變量的初值為
7、:false 整數(shù)變量的初值為:0 浮點(diǎn)數(shù)變量的初值為:0.0 引用(復(fù)合)變量的初值為:null 在方法實(shí)現(xiàn)中定義的變量必須顯式的初始化。 變量的作用域 指可訪問變量的一段代碼,在程序中不同的地方聲明的變量具有不同的作用域:局部變量、類變量、方法參數(shù)、例外處理參數(shù)。在一定的作用域內(nèi),變量名必須唯一。,2、Java數(shù)據(jù)類型 變量,2、Java數(shù)據(jù)類型 數(shù)據(jù)類型,所有基本類型所占的位數(shù)都是確定的,并不因操作系統(tǒng)的不同而不同。 所有基本類型的關(guān)鍵詞都是小寫的。,數(shù)據(jù)類型所占位數(shù)數(shù)的范圍 char 160 65535 byte 8-2727-1 short 16-215215-1 int 32-23
8、1231-1 long 64-263263-1 float 32 3.4e038 3.4e038 double 64 1.7e308 1.7e308,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型,布爾型數(shù)據(jù)只有兩個值true和false,且它們不對應(yīng)于任何整數(shù)值 布爾型變量的定義如: boolean b = true; 布爾型數(shù)據(jù)只能參與邏輯關(guān)系運(yùn)算: ,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:布爾類型(boolean),字符型數(shù)據(jù)代表16位的Unicode字符 字符常量是用單引號括起來的一個字符 a B n u0030 字符型數(shù)據(jù)的取值范圍為 065535 或者說 u0000uFFFF u0000為缺省值
9、 示例 char c1; 缺省值為0 char c2 = 0; 賦初值為字符0 char c3 = 32; 用整數(shù)賦初值為空格,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:字符類型(char),特殊字符的常量表示法: 反斜線(Backslash) 退格(Backspace)b 回車(Carriage return)r 進(jìn)紙符(Form feed)f 制表符(Form feed)t 換行(New line)n 單引號(Single quote) 八進(jìn)制數(shù)( 0377 )DDD Unicode字符uHHHH,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:字符類型(char),整型常量 1. 十進(jìn)制整數(shù) 如123,4
10、56,0 2. 八進(jìn)制整數(shù) 以0開頭,如0123表示十進(jìn)制數(shù)83,011表示十進(jìn)制數(shù)9。 3. 十六進(jìn)制整數(shù) 以0 x或0X開頭,如0 x123表示十進(jìn)制數(shù)291,0X12表示十進(jìn)制數(shù)18。 整型變量 類型為byte、short、int或long,byte在機(jī)器中占8位,short占16位,int占32位,long占64位。整型變量的定義如: int x=123; /指定變量x為int型,且賦初值為123 byte b = 8; short s = 10; long y = 123L; long z = 123l;,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:整數(shù)類型(byte, short, int
11、, long),64位長整數(shù)以l或L結(jié)尾: 12l, -343L, 0 xfffffffffL 1L 32 等于 4294967296L 1 32 等于 0 沒有以l或L結(jié)尾的數(shù)字,根據(jù)其實(shí)際值所屬范圍,可以被用作byte,short,或int型整數(shù) 以l或L結(jié)尾的數(shù)字,無論其實(shí)際值所屬范圍怎樣,都被用作long型整數(shù),2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:整數(shù)類型(byte, short, int, long),示例 byte b1; 缺省值為0 byte b2 = 127; 賦初值為127 short s1 = (short)(b1 + b2); 強(qiáng)制類型轉(zhuǎn)換 short s2 = (sho
12、rt)(b1 + 123) 強(qiáng)制類型轉(zhuǎn)換 int n = b1 + b2; 不需要強(qiáng)制類型轉(zhuǎn)換 long l1 = 2343; 不需要強(qiáng)制類型轉(zhuǎn)換 long l2 = 4294967296L; 必須用L或l結(jié)尾 long l3 = 65536*63356; 乘法運(yùn)算越界,l3為0 long l4 = 65536L*63356; l4為4294967296L,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:整數(shù)類型(byte, short, int, long),實(shí)型常量 1. 十進(jìn)制數(shù)形式 由數(shù)字和小數(shù)點(diǎn)組成,且必須有小數(shù)點(diǎn),如0.123, .123, 123.,123.0 2. 科學(xué)計(jì)數(shù)法形式 如:12
13、3e3或123E3,其中e或E之前必須有數(shù)字,且e或E后面的指數(shù)必須為整數(shù)。 32位浮點(diǎn)數(shù)形式: 0.23f, 1.23E-4f , . 18F,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:浮點(diǎn)數(shù)類型,實(shí)型(float, double),實(shí)型變量 類型為float或double,float在機(jī)器中占32位,double占64位。實(shí)型變量的定義如: double d1 = 127.0; 賦初值為127 double d2 = 127; 賦初值為127 float f1 = 127.0f; 必須在數(shù)字后加f或F float f2 = 4.0e38f; 錯誤!32位浮點(diǎn)數(shù)不能超過 3.40282346638
14、52886e38 float f3 = (float)d1; 必須強(qiáng)制類型轉(zhuǎn)換,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:浮點(diǎn)數(shù)類型,實(shí)型(float, double),public class Assign public static void main (String args ) int x , y ; byte b = 6; float z = 1.234f ; double w = 1.234 ; boolean flag = true ; char c ; c = A ; x = 12 ; y = 300; . ,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:使用舉例,自動類型轉(zhuǎn)換 整型、實(shí)型、字
15、符型數(shù)據(jù)可以混合運(yùn)算。運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型,然后進(jìn)行運(yùn)算,轉(zhuǎn)換從低級到高級: 低-高 byte,short,char int long float double,操作數(shù)1類型操作數(shù)2類型轉(zhuǎn)換后的類型 byte、short、charintint byte、short、char、intlonglong byte、short、char、int、longfloatfloat byte、short、char、int、long、floatdoubledouble,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:數(shù)據(jù)類型轉(zhuǎn)換,數(shù)據(jù)類型轉(zhuǎn)換必須滿足如下規(guī)則: 不能對boolean類型進(jìn)行類型轉(zhuǎn)換。 不能
16、把對象類型轉(zhuǎn)換成不相關(guān)類的對象。 在把容量大的類型轉(zhuǎn)換為容量小的類型時(shí)必須使用強(qiáng)制類型轉(zhuǎn)換。 轉(zhuǎn)換過程中可能導(dǎo)致溢出或損失精度 int i = 8; byte b=(byte)i; (byte)255 = -1(byte)0 x5634 = 0 x34 浮點(diǎn)數(shù)到整數(shù)的轉(zhuǎn)換是通過舍棄小數(shù)得到,而不是四舍五入 (int)23.7 = 23(int)-45.89f = -45,2、Java數(shù)據(jù)類型 基本數(shù)據(jù)類型:數(shù)據(jù)類型轉(zhuǎn)換,數(shù)組Array ,類 class,接口interface屬于引用 類型。 引用 類型的變量是所引用的對象的內(nèi)存地址。,class MyDate private int day
17、= 1; private int month = 1; private int year = 2000; public MyDate( int day, int month, int year) . public void print() . public class TestMyDate public static void main( String args) MyDate my_ birth = new MyDate( 22, 7, 1964); ,2、Java數(shù)據(jù)類型 復(fù)合(引用)數(shù)據(jù)類型,引用數(shù)據(jù)類型(reference type),創(chuàng)建一個類對象: MyDate my_ birth
18、 = new MyDate( 22, 7, 1964);,引用數(shù)據(jù)類型(reference type),兩個引用變量的賦值將會產(chǎn)生如下結(jié)果: int x = 7; int y = x; MyDate s = new MyDate( 22, 7, 1964); MyDate t = s; 兩個變量指向同一個對象:,運(yùn)算符(Operator)和表達(dá)式(Expression) 注釋(Comment) 語句(Statement) 代碼段(Code Block) 作用域(Scope),3、Java語言的結(jié)構(gòu),(1)運(yùn)算符 算術(shù)運(yùn)算符: +,*,/,%,+, 關(guān)系運(yùn)算符: ,=,)結(jié)尾的單一命令是一條語句
19、(Statement),一條語句一般是一行代碼,但也可以占多行代碼。 int a = 1; / 變量定義及初始化語句 用大括號( )圍起來的多條語句構(gòu)成一個代碼段(Code block);同時(shí)代碼段也大括號前的一些修飾性描述: class Aclass for (int i=0; i=1; i+) ,3、Java語言的結(jié)構(gòu) 語句和代碼段,作用域(Scope)決定了變量可使用的范圍 全局變量(Global variables):變量可以在整個類中被訪問; 局部變量( Local variables ):變量只能在定義其的代碼段中被訪問。 使用局部變量比使用全局變量更安全。,3、Java語言的結(jié)構(gòu)
20、 作用域,變量的作用域,在類體中聲明的類成員變量,可在該類的各個成員方法中使用; 在某個方法體中或參數(shù)表中聲明的變量,只能在該方法體中使用; 在一個代碼段中定義的變量只能在該代碼段或者該代碼段的子代碼段中可見。,public class VariableScope public static void main(String arge ) int x; x = 10; if ( x = = 10 ) int y = 20; System.out.println( x = + x); System.out.println( y = + y); System.out.println( x = +
21、x); System.out.println(“ y = ” + y); ,在 Java 語言中,嵌套的程序塊的內(nèi)層與外層,不允許定義相同的變量名,否則將導(dǎo)致編譯錯誤。 public class ScopeError public static void main(String arge ) int E = 999; int E = 999; System.out.println( E = + E); ,4、Java控制語句,分支語句:if-else, switch 循環(huán)語句:while, do-while, for 與程序轉(zhuǎn)移有關(guān)的其它語句: break, continue, return
22、例外處理語句:try-catch-finally, throw,if(boolean-expression1) statements1; else if(boolean-expression2) statements2; else statementsN; ,4、Java控制語句 條件語句 if-else,布爾表達(dá)式boolean-expression是任意一個返回布爾數(shù)據(jù)類型的表達(dá)式,而且必須是(比C或C +要嚴(yán)格)。 與C或C+一樣,每個單一語句后面都要有分號。為了增強(qiáng)程序的可讀性,應(yīng)將if或else后的語句用括起來。 else子句是任選的,不能單獨(dú)作為語句使用,它必須和if語句配對使用,
23、并且總是與離它最近的if配對。,int i1 = 123; int i2 = 456; if( i1i2 ) System.out.println(“The bigger one is: ”+i1); else System.out.println(“The bigger one is: ”+i2); ,4、Java控制語句 條件語句 if-else,switch (expression) case value1 : statements1; break; case valueN : statementsN; break; default : defaultStatements; ,4、Jav
24、a控制語句 多分支語句 switch,表達(dá)式expression的返回值類型必須是這幾種類型之一:int、byte、char、short。 case子句中的值valueI必須是常量,而且所有case子句中的值應(yīng)是不同的。 default子句是任選的。 break語句用來在執(zhí)行完一個case分支后,使程序跳出switch語句,即終止switch語句的執(zhí)行。 (如果某個case分支后沒有break語句,程序?qū)⒉辉僮霰容^而執(zhí)行下一個分支。) switch語句的功能可以用if-else語句來實(shí)現(xiàn),但某些情況下,使用switch語句更簡煉。,4、Java控制語句 多分支語句 switch,int a =
25、 100; int b = 20; int c; char oper = +; switch(oper) case +: c = a b; break; case -: c = a - b; break; default : c = a * b; break; ,4、Java控制語句 多分支語句 switch,循環(huán)語句 while(當(dāng)型循環(huán)) initialization /初始化條件 while (termination) /循環(huán)條件 body; /循環(huán)體 iteration; /迭代,變更循環(huán)條件 當(dāng)表達(dá)式termination為true時(shí),執(zhí)行中的語句,否則終止循環(huán)。,4、Java控制語
26、句 循環(huán)語句 while(當(dāng)型循環(huán)),循環(huán)語句 do-while(直到型循環(huán)) initialization /初始化條件 do body; /循環(huán)體 iteration; /迭代,變更循環(huán)條件 while (termination) ; /循環(huán)條件 首先執(zhí)行一遍中的語句,當(dāng)表達(dá)式termination為true時(shí),繼續(xù)執(zhí)行中的語句,否則終止循環(huán)。,4、Java控制語句 循環(huán)語句 do-while(直到型循環(huán)),循環(huán)語句 for(另一種當(dāng)型循環(huán)) for (initialization; termination; iteration) body; /循環(huán)體 initialization /初始
27、化條件 termination /循環(huán)條件 iteration /迭代,變更循環(huán)條件,4、Java控制語句 循環(huán)語句 for(另一種當(dāng)型循環(huán)),for語句執(zhí)行時(shí),首先執(zhí)行初始化操作,然后判斷終止條件是否滿足,如果滿足,則執(zhí)行循環(huán)體中的語句,最后執(zhí)行迭代部分。完成一次循環(huán)后,重新判斷終止條件。 初始化、終止以及迭代部分都可以為空語句(但分號不能省),三者均為空的時(shí)候,相當(dāng)于一個無限循環(huán)。 在初始化部分和迭代部分可以使用逗號語句,來進(jìn)行多個操作。逗號語句是用逗號分隔的語句序列。 for( int i=0, int j=10; ij; i+, j-) ,4、Java控制語句 循環(huán)語句 for(另一種
28、當(dāng)型循環(huán)),int n = 1, sum = 0; while ( n=10 ) sum = sum + n; n+; ,int n = 10, sum = 0; do sum += n; n-; while( n0);,int sum =0; for( int i=1; i=10; i+ ) sum += i; ,while循環(huán),do-while循環(huán),for循環(huán),4、Java控制語句 循環(huán)語句,在switch語中,break語句用來終止switch語句的執(zhí)行,使程序從整個switch語句后的第一條語句開始執(zhí)行。 在循環(huán)語句中,break用于終止并跳出循環(huán),從緊跟著循環(huán)體代碼段后的語句執(zhí)行。 在Java中,可以為每個代碼塊加一個標(biāo)號,一個代碼塊通常是用大括號括起來的一段代碼。加標(biāo)號的格式為: BlockLabel: codeBlock; break語句的第二種使用情況就是跳出它所指定的塊,并從緊跟該塊后的第一條語句處執(zhí)行。 BlockLabel: codeBlock; break BlockLabel; co
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版高中化學(xué)選修四2-3-2化學(xué)平衡的移動課時(shí)測試1
- 質(zhì)量專項(xiàng)施工方案
- 人教版高中化學(xué)選修四第二章化學(xué)反應(yīng)速率和化學(xué)平衡章末復(fù)習(xí)課時(shí)練習(xí)2
- 金黃色葡萄球菌IsdB、TRAP和ClfA融合蛋白的免疫保護(hù)作用
- 大豆GmWRKYs基因的克隆和功能研究
- 景觀游園施工方案
- 涼山安全咨詢合同范例
- 公司過戶個人合同范本
- 農(nóng)村置換地合同范例
- 七年級生物上冊第2單元第3章細(xì)胞第2節(jié)細(xì)胞是生命活動的單位練習(xí)題無答案新版北師大版
- 2024年高等教育法學(xué)類自考-00369警察倫理學(xué)考試近5年真題集錦(頻考類試題)帶答案
- 礦山開采居間合作協(xié)議書范文
- 社交媒體對消費(fèi)者行為的影響調(diào)研報(bào)告
- 人防工程管理制度范本(三篇)
- GB/T 15822.1-2024無損檢測磁粉檢測第1部分:總則
- 計(jì)算機(jī)一級考試WPS試題及答案
- 快樂讀書吧《孤獨(dú)的小螃蟹》整本書閱讀指導(dǎo)課教學(xué)設(shè)計(jì)-2023-2024學(xué)年語文二年級上冊統(tǒng)編版
- 生豬屠宰獸醫(yī)衛(wèi)生檢驗(yàn)人員理論考試題庫及答案
- 五、完成課題的可行性分析
- 全科醫(yī)生題庫附有答案
- DL∕T 5765-2018 20kV及以下配電網(wǎng)工程工程量清單計(jì)價(jià)規(guī)范
評論
0/150
提交評論