java學(xué)習(xí)筆記finally_第1頁
java學(xué)習(xí)筆記finally_第2頁
java學(xué)習(xí)筆記finally_第3頁
java學(xué)習(xí)筆記finally_第4頁
java學(xué)習(xí)筆記finally_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、01 Java標(biāo)識符Java對各種變量、方法和類等要素命名時使用的字符序列稱為標(biāo)識符。Ø 凡是可以自己取名字的地方都叫標(biāo)識符,都要遵守標(biāo)識符的命名規(guī)則。Java標(biāo)識符的命名規(guī)則Ø 標(biāo)識符由字母、下劃線“_”、美元符號”$”或數(shù)字組成。Ø 標(biāo)識符應(yīng)以字符、下劃線或美元符號開頭。Ø Java標(biāo)識符區(qū)分大小寫,長度無限制。約定俗成:Java標(biāo)識符應(yīng)做到見文知意,且不能與java 語言關(guān)鍵字重復(fù)。Java關(guān)鍵字:02 Java常量Ø Java常量值用字符串表示,區(qū)分為不同的數(shù)據(jù)類型。如整型常量123 實型常量 3.13 字符常量 ”a” 邏輯常量 tr

2、ue false 字符串常量 “hello world”Ø 注意:區(qū)分字符常量和字符串常量。Ø 參見final關(guān)鍵字。Ø 常量指示的是值是不能改變的變量。03 Java變量Ø Java變量是程序中最基本的存儲單元, 其要素包括變量名,變量類型和作用域。Ø Java程序中每一個變量都屬于特定的數(shù)據(jù)類型,在使用前必須對其聲明,聲明格式為:Type varname=value;如 int a=123;Ø 從本質(zhì)上講,變量其實是內(nèi)存中的一小快區(qū)域,使用變量名來訪問這塊區(qū)域。因此,每一個變量使用前必須要先聲明(申請),然后必須進(jìn)行賦值(填充內(nèi)容

3、),才能使用。04 程序執(zhí)行過程1程序從硬盤加載到內(nèi)存區(qū)2找到main函數(shù)開始執(zhí)行3 執(zhí)行過程中的內(nèi)存管理 heap 堆 stack 棧05 Java變量的分類Ø 按其聲明的位置劃分局部變量:方法或語句塊內(nèi)部定義的變量。方法體內(nèi)部聲明的變量(包括形參)稱為局部變量。方法體內(nèi)部是指與方法對應(yīng)的大括號內(nèi)部。成員變量:方法外部、類的內(nèi)部定義的變量。方法體外,類體內(nèi)聲明的變量稱為成員變量。注意:類外面不能有變量的聲明。局部變量和成員變量在內(nèi)存中屬于不同的區(qū)域。Ø 按所屬的數(shù)據(jù)類型劃分:基本數(shù)據(jù)類型變量引用數(shù)據(jù)類型變量Java基本數(shù)據(jù)類型(4種8類)不同的是數(shù)據(jù)在內(nèi)存中所占的長度大小

4、以及0,1在內(nèi)存中的排列。數(shù)值型:整型(byte 字節(jié)型,int 整型,short 短整型,long 長整型)Java各整數(shù)類型有固定的表數(shù)范圍和字段長度。一個字節(jié)為8位。三種整型常量表示方式:十進(jìn)制:12八進(jìn)制:012十六進(jìn)制:0x12Java語言的整型常量默認(rèn)為int型,聲明long型常量可以后在l或L。浮點型:(float 單精度 double雙精度)有固定的表數(shù)范圍和字段長度,不受平臺的影響。兩種表示方式:十進(jìn)制法:12.32科學(xué)計數(shù)法方式:12e3Java 浮點數(shù)默認(rèn)為double類型,如要聲明一個常量為float類型,則需在數(shù)字后面加f或F。如double e=122.323; f

5、loat f=343.34f;字符型(文本型):char。字符常量為單引號括起來的單個字符。Java字符采用Unicode編碼,每個字符占兩個字節(jié)。注意:二進(jìn)制,八進(jìn)制和十六進(jìn)制的轉(zhuǎn)換。布爾型:boolean。適用于邏輯運算,一般用于程序流程控制。只允許取值true或false,不可以用0或非0替代true和false,這點和C語言不同。06 基礎(chǔ)數(shù)據(jù)類型的轉(zhuǎn)換l Boolean類型不可以轉(zhuǎn)換為其他的數(shù)據(jù)類型。l 整型、字符型、浮點型的數(shù)據(jù)在混合運算中相互轉(zhuǎn)換,轉(zhuǎn)化時遵循以下原則:Ø 容量小的類型自動轉(zhuǎn)換為容量大的數(shù)據(jù)類型;數(shù)據(jù)類型按容量大小排序為:byte,short,charin

6、tlongfloatdoublebyte,short,char之間不會相互轉(zhuǎn)換,他們?nèi)咴谟嬎銜r首先會轉(zhuǎn)換為int類型。Ø 容量大的類型轉(zhuǎn)換為容量小的數(shù)據(jù)類型時,要加上強制符,但可能造成精度降低或溢出,使用時要格外注意。Ø 有多種類型的數(shù)據(jù)混合運算時,系統(tǒng)首先自動的將所有數(shù)據(jù)轉(zhuǎn)換成容量最大的那一種數(shù)據(jù)類型,然后再進(jìn)行計算。實數(shù)常量默認(rèn)為double。整數(shù)常量默認(rèn)為int.07 程序格式比算法還重要。格式應(yīng)該注意的問題。Ø 大括號對齊Ø 遇到縮進(jìn),Tab/Shift+TabØ 程序塊之間加空行Ø 并排語句之間加空行Ø 運算符兩

7、側(cè)加空格1、 有特定條件Ø 前面有空格Ø 成對編程程序格式的原則Ø 要讓別人看得清楚Ø 要讓別人看得舒服Ø08 運算符Java語言支持如下運算符:Ø 算法運算符 +, - ,* ,/ ,%, + ,-Ø 關(guān)系運算符 >,<,>=, <=, = ,!=Ø 邏輯運算符:!,&,| , ,&&, |Ø 位運算符:&,|,>>,<<,>>>Ø 賦值運算符:=,當(dāng)兩側(cè)數(shù)據(jù)類型不一致時,可以適用默認(rèn)類型轉(zhuǎn)換或使

8、用強制類型轉(zhuǎn)換原則進(jìn)行處理。對于byte,short,char等類型變量,只要不超出其表數(shù)范圍,則不需要強制類型轉(zhuǎn)換。Ø 擴展賦值運算符:+=,-=,*=,/=,Ø 字符串連接運算符:+。+運算符兩側(cè)的操作數(shù)中只要一個是字符串類型,系統(tǒng)會自動將另一個操作數(shù)轉(zhuǎn)換為字符串然后再進(jìn)行連接。+放在后面,先取值后運算+放在前面,先運算再取值。當(dāng)進(jìn)行打印的時候,無論任何類型都自動轉(zhuǎn)換為字符串進(jìn)行打印。09 表達(dá)式符合一定語法規(guī)則的運算符和操作數(shù)的序列。表達(dá)式的值和類型:對表達(dá)式中的操作數(shù)進(jìn)行運算得到的結(jié)果稱為表達(dá)式的值。表達(dá)式的值的類型即為表達(dá)式的類型。表達(dá)式的運算順序應(yīng)按照運算符的優(yōu)

9、先級從高到低的順序進(jìn)行。優(yōu)先級相同的運算符按照事先約定好的結(jié)合方向進(jìn)行。運算符優(yōu)先級,結(jié)合方向。三目條件運算符X?Y:Z其中X為boolean類型表達(dá)式,先計算X的值,若為true,則整個三目運算的結(jié)果為Y的表達(dá)式的值,否則整個運算結(jié)果為表達(dá)式Z的值。默認(rèn)情況下,實例變量和類變量的初始值取決于其數(shù)據(jù)類型。l 數(shù)值變量:0l 字符變量:0l 布爾變量:falsel 對象:null字符串的運算運算符+拼接運算10 對象創(chuàng)建對象使用newVolcanoRobot robbie = new VolcanoRobot();圓括號很重要,不能省略。括號可以為空,在這種情況下,創(chuàng)建的將是最簡單最基本的對象;

10、也可以包含參數(shù),這些參數(shù)決定了對象的實例變量的初始值和其他初始量。測試和修改對象的類變量獲取值要獲取實例變量的值,可以使用句點表示法。實例變量和類變量由兩部分組成,.句點運算符左邊為對象和類的引用;.句點運算符右邊為變量名句點表示法是一種引用對象的實例變量和方法的方式。類變量是在類中定義和存儲的,它們的值適用于類及其所有的實例。定義類變量的方法是,在前面加上關(guān)鍵字static.修改類變量的值將影響所有的實例。調(diào)用對象的方法調(diào)用對象的方法時也使用句點表示法。被調(diào)用的對象位于句點的左邊,方法名及其參數(shù)位于句點的右邊。如:將對象從一個類轉(zhuǎn)換為另一個類類的對象也可被轉(zhuǎn)換為其他類的對象,但必須滿足如下條

11、件:源類和目標(biāo)類之間存在繼承關(guān)系,即其中一個類是另一個類的子類。比較對象、判斷對象所屬的類、判斷對象是否是特定類的實例比較對象= 比較對象是否相同(即引用(地址)equals 比較對象的值是否相同判斷對象所屬的類想確定對象所屬的類,可以采用下述方法,這里判斷的是賦給key的對象所屬的類:String name = key.getClass().getName();另一種檢測方式是instanceof 運算符,它使用兩個操作數(shù),左邊為對象的引用,右邊為類名,該表達(dá)式返回一個布爾值,如果該對象是這種類或子類的實例,為true,否則為false。11 數(shù)組、邏輯和循環(huán)創(chuàng)建數(shù)組 new 系統(tǒng)自動初始化

12、訪問、修改數(shù)組,數(shù)組名加索引訪問和修改數(shù)組元素。如: int a = new int 99; 自動初始化為0;a23訪問,a23 = 23;對數(shù)組元素進(jìn)行修改。多維數(shù)組:數(shù)組可以是多維的,包含多個下標(biāo),以多維方式存儲信息。塊語句Java中的語句被組織為塊,塊以花括號表示開始,表示結(jié)束。它為塊中聲明的局部變量創(chuàng)建了作用域,在其中變量存在并可使用,如果在變量的作用域外使用它,將發(fā)生錯誤。if語句條件語句僅在指定條件滿足時才執(zhí)行。if 條件語句使用布爾表達(dá)式來判斷是否執(zhí)行語句。如果表達(dá)式返回true,則執(zhí)行語句。也可以在條件為false的時候執(zhí)行其他語句,else。switch 條件語句如果要與多個

13、值進(jìn)行比較,用switch語句更佳。如:在每個case之后,可以有任何數(shù)目的語句,每個case中都有一個break 語句,用于指出何時停止執(zhí)行語句,如果case中沒有break語句,則找到匹配的情況后,該case中的語句及其后到break或switch末尾的所有語句都執(zhí)行。for循環(huán)for循環(huán)用于重復(fù)執(zhí)行語句,直到條件得到滿足。在Java中,for循環(huán)的格式如下:initialization 是一個表達(dá)式,用來初始化循環(huán)的起始狀態(tài),test是每次迭代前都要進(jìn)行的檢測,它必須是布爾表達(dá)式或返回值為布爾值的函數(shù),increment 用于修改循環(huán)變量的值,從而將循環(huán)狀態(tài)引向返回false的狀態(tài),最終

14、結(jié)束循環(huán)。while和dowhile循環(huán)while循環(huán)用于重復(fù)執(zhí)行一條語句,直到特定條件不為true為止。先判斷條件,再執(zhí)行。dowhile 循環(huán)do 循環(huán)與while循環(huán)非常類似,主要區(qū)別在于檢測條件的位置。while循環(huán)在循環(huán)執(zhí)行前檢測條件,因此如果首次檢測條件為false,則循環(huán)體一次也不會執(zhí)行。do 循環(huán)在檢測條件之前,至少執(zhí)行循環(huán)體一次,因此如果首次檢測條件為false,則循環(huán)體已經(jīng)執(zhí)行一次了。跳出循環(huán)在所有循環(huán)中,當(dāng)測試條件滿足時循環(huán)將結(jié)束,有時,在循環(huán)執(zhí)行過程中,當(dāng)發(fā)生了某種情況后,需要提前結(jié)束循環(huán),在這種情況下,可以使用關(guān)鍵字break 和continue。break 立即結(jié)束

15、當(dāng)前循環(huán),如果在循環(huán)中嵌套了循環(huán),將跳到外層循環(huán)中。continue 關(guān)鍵字直接進(jìn)入循環(huán)的下一次迭代。對于do 和while 循環(huán)這就意味著重新回到塊語句從頭執(zhí)行,對于for循環(huán),則計算增量表達(dá)式,然后執(zhí)行塊語句。注意:break和continue的區(qū)別12 創(chuàng)建類和方法在Java中,程序由main 主類以及用于支持主類的其他類組成。支持類包括你可能需要的Java2類庫中的類(如String 、Math).類定義的組成部分class Ticker/the body of the classextends 關(guān)鍵字用于指定超類創(chuàng)建和使用實例變量每當(dāng)創(chuàng)建類時,都需要定義新類不同于其超類的行為。行為是

16、通過指定新類的變量和方法定義的。Java中有3中常用的變量:類變量、實例變量和局部變量。實例變量:在方法定義外聲明且沒有使用關(guān)鍵字static修飾的變量都是實例變量。類變量適用于整個類,而不是類的各個對象,適合用于在同一種類的不同對象之間共享信息或記錄類級信息。在類定義中使用關(guān)鍵字static來聲明類變量。創(chuàng)建和使用方法方法定義了對象的行為,即在對象被創(chuàng)建時發(fā)生的事情或?qū)ο笤谄渖嫫趦?nèi)能夠執(zhí)行的各個任務(wù)。定義方法:在Java中,方法定義有4個基本的部分:l 方法名;l 參數(shù)列表;l 方法返回的對象類型或基本數(shù)據(jù)類型l 方法體。方法定義的前面2個部分構(gòu)成了方法的特征標(biāo)?;镜姆椒ǘx:方法的參數(shù)

17、列表是一組變量聲明,它們被放在圓括號內(nèi),并用逗號分隔。這些參數(shù)是方法體內(nèi)的局部變量,當(dāng)方法調(diào)用時,將獲得它們的值。方法體內(nèi)可以包含語句、表達(dá)式、對其他對象的方法調(diào)用、條件語句、循環(huán)等。除非返回類型被聲明為void ,否則方法執(zhí)行完畢時,將返回某種類型的值,必須在方法的出口點使用關(guān)鍵字return 顯式地返回這個值。關(guān)鍵字this有時候,你可能想在方法體中引用當(dāng)前對象,即其方法被調(diào)用的對象,以便將當(dāng)前對象的實例變量或當(dāng)前對象作為參數(shù)傳遞給其他方法。在這種情況下,要引用當(dāng)前對象,可以使用關(guān)鍵字this。關(guān)鍵字this指向當(dāng)前對象,可用于任何可使用對象引用的地方,在句點表示法中,作為方法的參數(shù),作為

18、當(dāng)前方法的返回值等。用于this是指向當(dāng)前實例的引用,因此只能在實例方法的定義體內(nèi)使用它。在類方法中(用關(guān)鍵字static聲明的方法)中,不能使用this。變量的作用域和方法的定義要使用變量,必須知道其作用域。作用域是程序的一部分,在其中可以使用某個變量或其他類型的信息,超出作用域后,該變量將不復(fù)存在。在java中聲明變量時,便限定了該變量的作用域。如,局部變量只能在定義它的語句塊中使用,實例變量的作用域是整個類,因此可以被類中的任何實例方法使用。當(dāng)引用變量時,java從最里面的作用域向外查找其定義。在這個類中,有兩個名稱皆為test的變量。前者是實例變量,被初始化為10;后者是局部變量,值為

19、20.方法printTest()中的局部變量隱藏了實例變量test。在方法main()中調(diào)用printTest()時,它顯示的值為20,雖然有一個值為10的實例變量test。為了避免這種問題,可以使用this.test 來引用實例變量,使用test來引用局部變量,但更好的方法是盡量避免使用相同的變量名和定義。將參數(shù)傳遞給方法調(diào)用接收對象參數(shù)的方法時,對象是按引用傳遞的。類方法類變量和實例變量之間的關(guān)系與類方法和實例方法的關(guān)系相同。類方法可以被類的任何實例使用,也可被其他類使用,此外,與實例方法不同,調(diào)用類方法時,不需要有類的對象。定義類方法時,需要在方法定義前加上關(guān)鍵字static。如果方法前

20、沒有關(guān)鍵字static,則該方法是實例方法,實例方法只能在對象中運行,而不能在類中運行。大多數(shù)操作或影響特定對象的方法都應(yīng)定義為實例方法,哪些提供通用功能,但不直接影響特定對象的方法應(yīng)聲明為類方法。不同于實例方法,類方法不能被繼承,因此在子類中不能覆蓋超類中的類方法。Java應(yīng)用程序中的main()方法應(yīng)用程序的入口類,是程序的入口。應(yīng)用程序運行時,Java虛擬機將調(diào)用該方法。創(chuàng)建重載方法,名稱相同但定義和特征標(biāo)不同創(chuàng)建同名方法:使用java類庫時,通常會遇到很多同名方法的類。名稱相同的方法是通過下述兩個因素區(qū)分的:l 參數(shù)個數(shù)l 參數(shù)的數(shù)據(jù)類型或?qū)ο筮@兩個因素都是方法特征標(biāo)的一部分,使用多個

21、名稱相同但特征標(biāo)不同的方法被稱為重載。方法重載可以避免使用完全不同的方法來完成幾乎相同的任務(wù)。重載也使得方法能夠根據(jù)收到的參數(shù)進(jìn)行不同的操作。當(dāng)調(diào)用對象的方法時,Java將對方法名和參數(shù)進(jìn)行匹配,以確定應(yīng)執(zhí)行哪個方法定義。要創(chuàng)建重載方法,可在同一類中創(chuàng)建多個不同的方法定義,它們的名稱相同,但參數(shù)列表不同。不同之處可以是參數(shù)數(shù)目、參數(shù)類型,也可以兩者都不同。只要參數(shù)列表是獨特的,Java允許對方法進(jìn)行重載。創(chuàng)建構(gòu)造函數(shù)在類定義中,還可以定義構(gòu)造函數(shù),這些方法在對象被創(chuàng)建時自動被調(diào)用。構(gòu)造函數(shù)是在對象被創(chuàng)建(被構(gòu)造)時調(diào)用的方法。與其他方法不同,構(gòu)造函數(shù)不能被直接調(diào)用。使用new來創(chuàng)建類的實例時,

22、Java完成下述3項工作:l 為對象分配內(nèi)存l 初始化對象的實例變量,賦予初值或設(shè)置為默認(rèn)值(數(shù)值為0,對象為null,布爾值為false、字符值為0)調(diào)用類的構(gòu)造函數(shù)如果類沒有構(gòu)造函數(shù),則結(jié)合使用new和該類的名稱時,仍將創(chuàng)建一個對象。通過在類中定義構(gòu)造函數(shù),可以為實例變量設(shè)置初值,調(diào)用基于這些變量的方法,調(diào)用其他對象的方法以及設(shè)置對象的初始屬性。如果類包含接收一個或多個參數(shù)的構(gòu)造函數(shù),則僅當(dāng)這個類有不接受任何參數(shù)的構(gòu)造函數(shù)時,才能調(diào)用這樣的構(gòu)造函數(shù)?;镜臉?gòu)造函數(shù)構(gòu)造函數(shù)與常規(guī)方法類似,但有3個基本區(qū)別:l 名稱與類名相同l 沒有返回類型l 不能使用return 語句來返回一個值調(diào)用另外一

23、個構(gòu)造函數(shù)構(gòu)造函數(shù)的重載與常規(guī)方法一樣,構(gòu)造函數(shù)也能接受不同數(shù)目和不同類型的參數(shù)。覆蓋方法創(chuàng)建覆蓋現(xiàn)有方法的方法要覆蓋方法,只需在子類中創(chuàng)建一個特征標(biāo)(名稱、返回值和參數(shù)列表)與超類相同的方法即可??稍赟ubPrinter類中覆蓋printMe()方法,并在其中添加一條顯示實例變量z的語句:調(diào)用原來的方法例子:13 包、接口和其他類特性類是用于創(chuàng)建對象的模板,對象能夠存儲數(shù)據(jù)和完成任務(wù)??刂茖Ψ椒ê妥兞康脑L問將類、方法和變量固定下來,禁止在子類中覆蓋其定義或值創(chuàng)建抽象的類和方法,將通用行為放到超類中將多個類組合成包使用接口填補類層次結(jié)構(gòu)中的空白限定符Java語言提供了4種級別的訪問控制:公有、

24、私有、受保護(hù)和默認(rèn)(不使用訪問控制限定符)默認(rèn):聲明變量和方法時,如果沒有使用任何訪問控制限定符,則它們對同一個包中的其他任何類都是可用的。私有:要完全將方法或變量隱藏起來,不被其他類使用,可使用private限定符,這種變量僅在其所在的類中是可見的。私有實例變量可被其所屬類中的方法使用,但不能被其他任何類的對象調(diào)用,私有方法也可被其所屬類中的其他方法調(diào)用,但不能被其他任何方法調(diào)用。這種限制也會影響繼承:任何私有變量和私有方法都不能被子類繼承。公有:類中的方法或變量可供任何類使用。保護(hù):使方法和變量僅供以下類使用(子類和同一包中的其他類)比較各種訪問控制級別繼承方法的法則l 在超類中被聲明為公

25、有的方法在子類中必須也是公有的;l 在超類中被聲明為保護(hù)的方法在子類中可以是保護(hù)的或公有的,但不能是私有的;l 對于沒有訪問控制的方法(沒有指定限制符),在子類中其訪問控制可以更嚴(yán)格。被聲明為私有的方法根本不能繼承,因此上述規(guī)則不適用。final類、方法和變量限定符final用于類、方法和變量,指出它們將不會被修改。final類不能被繼承final方法不能被子類覆蓋final變量的值不能被修改抽象類抽象類可以包含常規(guī)類能夠包含的任何東西,包含構(gòu)造函數(shù),因為子類可能需要繼承這種方法,抽象類也可以包含抽象方法,這時只有方法特征標(biāo),而沒有實現(xiàn)方法,這些方法將在抽象類的子類中被實現(xiàn)。抽象類用限定符ab

26、stract來聲明,不能在非抽象類中聲明抽象方法,如果一個抽象類除抽象方法外什么都沒有,則使用接口更合適。包包是一種組織類的方式。包中可以包含任意數(shù)量的類,這些類的用途相關(guān)或有繼承關(guān)系。包的用途l 包能夠?qū)㈩惤M織成單元l 包減少了名稱沖突帶來的問題。l 包能夠大面積地保護(hù)類、變量和方法而不是分別對每個類進(jìn)行保護(hù)。l 包可以用于唯一地標(biāo)識類。14 異常和線程(線程是重點,重新看)Java中兩個功能最強大的元素,線程和異常。線程是實現(xiàn)了Runnable接口或繼承了Thread類的對象,能與Java程序的其他部分同時運行;異常是表示Java運行階段可能發(fā)生的錯誤的對象。線程讓程序能夠更高效地利用其資

27、源,這是通過將程序的計算密集型部分分離開來,避免其降低程序其他部分的速度來實現(xiàn)的;異常讓程序能夠識別錯誤并作出響應(yīng),異常甚至可以幫助程序校正狀態(tài),并在可能的情況下繼續(xù)運行。異常線程使用Java進(jìn)行編程時,需要考慮的問題之一是如何使用系統(tǒng)資源。圖形、復(fù)雜的數(shù)學(xué)計算和其他密集型任何可能占用大量的處理器時間。使用圖形用戶界面的程序尤其如此。如果你編寫的圖形Java程序需要完成某種占用大量計算機時間的任務(wù),將發(fā)現(xiàn)該程序的圖形用戶界面的響應(yīng)速度非常慢。為解決這種問題,可將Java程序中占用大量處理器時間的函數(shù)分離開來,讓它們同程序的其他部分分開運行。這時通過線程的特性來實現(xiàn)的。線程是程序的一部分,它們在

28、程序的其他代碼執(zhí)行其他工作時獨立運行,這也被稱為多任務(wù),因為程序可以同時處理多項任務(wù)。線程適合用于完成占用大量處理時間且連續(xù)運行的任務(wù)。通過將程序的工作負(fù)荷放到線程中,可以讓程序的其他部分處理其他任務(wù)。這也使虛擬機能夠更容易地對程序進(jìn)行處理,因為所有的處理器密集型工作都被放到獨立的線程中。15 Java類庫數(shù)據(jù)結(jié)構(gòu)表示數(shù)據(jù)的類,包括如下所述的數(shù)據(jù)結(jié)構(gòu)l 位組(bit set):用于存儲布爾值l 鏈表(array list):可調(diào)整長度的數(shù)組l 堆棧(stack):后進(jìn)先出(LIFO)型結(jié)構(gòu)l 散列映射(hash map):使用鍵存儲數(shù)據(jù)項iterator 接口接口iterator 提供了一種以定義好的順序遍歷一系列元素的標(biāo)準(zhǔn)方式。方法hasNext() 定義了結(jié)構(gòu)是否還包含其他元素方法next()獲得結(jié)構(gòu)中的下一個元素數(shù)據(jù)結(jié)構(gòu)的遍歷堆棧數(shù)據(jù)結(jié)構(gòu)堆棧用于模擬以特定順序進(jìn)行訪問的信息。在Java中,Stack類被實現(xiàn)成一個后進(jìn)先出的堆棧,這

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論