Java關(guān)鍵字總結(jié)_第1頁(yè)
Java關(guān)鍵字總結(jié)_第2頁(yè)
Java關(guān)鍵字總結(jié)_第3頁(yè)
Java關(guān)鍵字總結(jié)_第4頁(yè)
Java關(guān)鍵字總結(jié)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、JAVA關(guān)鍵字總結(jié)1.final數(shù)據(jù):1對(duì)于基本類型前加以final修飾,表示被修飾的變量為常數(shù),不可以修改。一個(gè)既是static有是final的字段表示只占據(jù)一段不能改變的存儲(chǔ)空間。2final用于對(duì)象應(yīng)用時(shí),final使應(yīng)用恒定不變。一旦引用被初始化指向一個(gè)對(duì)象,就無(wú)法再把它指向另一個(gè)對(duì)象。3final方法:一是把方法鎖定,以防止繼承類修改它的含義,二是確保繼承中使方法行為保持不變,并且不會(huì)被覆蓋。類中所有的private方法都隱式地指定為是final。4final參數(shù):對(duì)于基本類型的變量,這樣做并沒有什么實(shí)際意義,因?yàn)榛绢愋偷淖兞吭谡{(diào)用方法時(shí)是傳值,也就是說你可以在方法中更改這個(gè)參數(shù)變

2、量而不會(huì)影響到調(diào)用語(yǔ)句,然而對(duì)于對(duì)象變量,卻顯得很實(shí)用,以為對(duì)象變量在傳遞時(shí)是傳遞其引用,這樣你在方法中對(duì)對(duì)象變量的修改也會(huì)影響到調(diào)用語(yǔ)句的對(duì)象變量,當(dāng)你在方法中不需要改變作為參數(shù)的變量時(shí),明確使用final進(jìn)行聲明,會(huì)防止你無(wú)意的修改而影響到調(diào)用方法。5final類:當(dāng)將某個(gè)類的整體定義為final時(shí),就表明了該類不允許被繼承。2.this和super1在你的方法中的某個(gè)刑參名與當(dāng)前對(duì)象的某個(gè)成員有相同的名字,這時(shí)為了不至于混淆,你便要明確使用this關(guān)鍵字來(lái)指明你要使用某個(gè)成員,使用方法是this.成員名,而不帶this的那個(gè)便是刑參。另外,還可以用this.方法名來(lái)引用當(dāng)前對(duì)象的某個(gè)方法

3、,但這時(shí)this就不是必須的了,你可以直接用方法名來(lái)訪問那個(gè)方法。2當(dāng)父類的方法被重寫后可以用super來(lái)調(diào)用父類的方法。如果父類的方法可以被子類調(diào)用,那你可以象使用this一樣使用它,用super.父類中的成員名的方式來(lái)調(diào)用。3super和this直接在其后跟上適當(dāng)?shù)膮?shù),因此它的意義就有了變化。super后加參數(shù)的是用來(lái)調(diào)用父類中具有相同形式的構(gòu)造函數(shù),this后加參數(shù)則調(diào)用的是當(dāng)前具有相同參數(shù)的構(gòu)造函數(shù)。4this通常指代當(dāng)前對(duì)象,super通常指帶父類。3.static1通常在一個(gè)類中定義一個(gè)方法為static,就是說無(wú)須本類的對(duì)象就可以直接調(diào)用。2靜態(tài)變量和靜態(tài)方法類似。所有此類實(shí)例

4、共享此靜態(tài)變量,也就是說類裝載時(shí),只分配一塊存儲(chǔ)空間,所有此類的對(duì)象都可以操控此塊存儲(chǔ)空間,當(dāng)然對(duì)于final就另當(dāng)別論了。3static定義的變量會(huì)優(yōu)先于任何其他非static變量,不論其出現(xiàn)順序如何。4static著是用來(lái)顯式的靜態(tài)變量初始化,這段代碼只會(huì)初始化一次,且在類被第一次裝載時(shí)。5在涉及到繼承的時(shí)候,會(huì)先初始化父類的static變量,然后是子類的。6通常一個(gè)普通類不允許聲明為靜態(tài)的,只有一個(gè)內(nèi)部類才可以。這時(shí)這個(gè)聲明為靜態(tài)的內(nèi)部類可以直接作為一個(gè)普通類來(lái)使用,而不需要實(shí)例一個(gè)外部類。4.abstract抽象1用在類的聲明中來(lái)指明一個(gè)類是不能被實(shí)例化的,但是可以被其他類繼承。一個(gè)抽

5、象類可以使用抽象方法,抽象方法不需要實(shí)現(xiàn),但是需要在子類中被實(shí)現(xiàn)。它的用途是向子類提供通用的信息。抽象類可以包含正常的類包含的任何東西,也就是說,類和實(shí)例變量,以及帶有任何修飾詞的方法。只有抽象類可能有抽象方法。如果一個(gè)不是抽象的類包含一個(gè)抽象方法,那么將會(huì)出現(xiàn)編譯錯(cuò)誤。例子:如果下列的一個(gè)成立,那么一個(gè)有抽象方法:a.它顯式的聲明了一個(gè)abstract方法。b.它從它的直接父類繼承了一個(gè)抽象方法。c.一個(gè)直接的類的父借口聲明或繼承了它的一個(gè)方法(這因此必須是abstract)2如果用戶聲明private,static,和final方法為abstarct,編譯錯(cuò)誤將出現(xiàn)。不可能重設(shè)一個(gè)priv

6、ate方法,因?yàn)橐粋€(gè)abstarct private永遠(yuǎn)不能被實(shí)現(xiàn)。static方法總是可用的,因此必須有一個(gè)實(shí)現(xiàn);static abstract將永遠(yuǎn)沒有實(shí)現(xiàn)。final方法不能被重設(shè),因此不回有final abstract方法的實(shí)現(xiàn)5.abstract abstract關(guān)鍵字可以修改類或方法。abstract類可以擴(kuò)展(增加子類),但不能直接實(shí)例化。abstract方法不在聲明它的類中實(shí)現(xiàn),但必須在某個(gè)子類中重寫。示例public abstract class MyClasspublic abstract String myMethod();注釋采用abstract方法的類本來(lái)就是抽象類,

7、并且必須聲明為abstract。abstract類不能實(shí)例化。僅當(dāng)abstract類的子類實(shí)現(xiàn)其超類的所有abstract方法時(shí),才能實(shí)例化abstract類的子類。這種類稱為具體類,以區(qū)別于abstract類。如果abstract類的子類沒有實(shí)現(xiàn)其超類的所有abstract方法,該子類也是abstract類。abstract關(guān)鍵字不能應(yīng)用于static、private或final方法,因?yàn)檫@些方法不能被重寫,因此,不能在子類中實(shí)現(xiàn)。final類的方法都不能是abstract,因?yàn)閒inal類不能有子類。6.boolean變量的值可以是true或false。示例boolean valid=tr

8、ue;if(valid)注釋boolean變量只能以true或false作為值。boolean不能與數(shù)字類型相互轉(zhuǎn)換。包含boolean操作數(shù)的表達(dá)式只能包含boolean操作數(shù)。boolean類是boolean原始類型的包裝對(duì)象類7.break用于提前退出for、while或do循環(huán),或者在switch語(yǔ)句中用來(lái)結(jié)束case塊。示例for(i=0;imax;i+)if()break;int type=;switch(type)case1:break;case2:break;default:注釋break總是退出最深層的while、for、do或switch語(yǔ)句。8.byte byte是Jav

9、a原始類型。byte可存儲(chǔ)在-128,127范圍以內(nèi)的整數(shù)值。示例byte b=124;注釋Byte類是byte原始類型的包裝對(duì)象類。它定義代表此類型的值的范圍的MIN_VALUE和MAX_VALUE常量。Java中的所有整數(shù)值都是32位的int值,除非值后面有l(wèi)或L(如235L),這表示該值應(yīng)解釋為long。9.case用來(lái)標(biāo)記switch語(yǔ)句中的每個(gè)分支。示例int arg=;switch(arg)case1:break;case2:break;default:break;注釋case塊沒有隱式結(jié)束點(diǎn)。break語(yǔ)句通常在每個(gè)case塊末尾使用,用于退出switch語(yǔ)句。如果沒有break

10、語(yǔ)句,執(zhí)行流將進(jìn)入所有后面的case和/或default塊。6.catch catch關(guān)鍵字用來(lái)在try-catch或try-catch-finally語(yǔ)句中定義異常處理塊。示例trycatch(e)trycatch(FooException e)catch(BarException e)trycatch(e)finally注釋開始和結(jié)束標(biāo)記和是catch子句語(yǔ)法的一部分,即使該子句只包含一個(gè)語(yǔ)句,也不能省略這兩個(gè)標(biāo)記。每個(gè)try塊都必須至少有一個(gè)catch或finally子句。如果某個(gè)特定異常類未被任何catch子句處理,該異常將沿著調(diào)用棧遞歸地傳播到下一個(gè)封閉try塊。如果任何封閉try塊

11、都未捕獲到異常,Java解釋器將退出,并顯示錯(cuò)誤消息和堆棧跟蹤信息。11.char char是Java原始類型。char變量可以存儲(chǔ)一個(gè)Unicode字符。示例char delimiter=;注釋可以使用下列char常量:b-空格f-換頁(yè)n-換行r-回車t-水平制表符-單引號(hào)-雙引號(hào)-反斜杠xxx-采用xxx編碼的Latin-1字符。x和xx均為合法形式,但可能引起混淆。uxxxx-采用十六進(jìn)制編碼xxxx的Unicode字符。Character類包含一些可用來(lái)處理char變量的static方法,這些方法包括isDigit()、isLetter()、isWhitespace()和toUpper

12、Case()。char值沒有符號(hào)。12.class class關(guān)鍵字用來(lái)聲明新的Java類,該類是相關(guān)變量和/或方法的集合。類是面向?qū)ο蟮某绦蛟O(shè)計(jì)方法的基本構(gòu)造單位。類通常代表某種實(shí)際實(shí)體,如幾何形狀或人。類是對(duì)象的模板。每個(gè)對(duì)象都是類的一個(gè)實(shí)例。要使用類,通常使用new操作符將類的對(duì)象實(shí)例化,然后調(diào)用類的方法來(lái)訪問類的功能。示例public class Rectanglefloat width;float height;public Rectangle(float w,float h)width=w;height=h;public float getWidth()return width;p

13、ublic float getHeight()return height;13.continue continue關(guān)鍵字用來(lái)跳轉(zhuǎn)到for、while或do循環(huán)的下一個(gè)迭代。示例for(i=0;imax;i+)if()continue;注釋continue總是跳到最深層while、for或do語(yǔ)句的下一個(gè)迭代。14.default default關(guān)鍵字用來(lái)標(biāo)記switch語(yǔ)句中的默認(rèn)分支。示例int arg=;switch(arg)case1:break;case2:break;default:break;注釋default塊沒有隱式結(jié)束點(diǎn)。break語(yǔ)句通常在每個(gè)case或default塊的末

14、尾使用,以便在完成塊時(shí)退出switch語(yǔ)句。如果沒有default語(yǔ)句,其參數(shù)與任何case塊都不匹配的switch語(yǔ)句將不執(zhí)行任何操作。15.do do關(guān)鍵字用于指定一個(gè)在每次迭代結(jié)束時(shí)檢查其條件的循環(huán)。示例dowhile(!found);注釋do循環(huán)體至少執(zhí)行一次。條件表達(dá)式后面必須有分號(hào)。16.doubledouble是Java原始類型。double變量可以存儲(chǔ)雙精度浮點(diǎn)值。示例double ratio=.01;double diameter=6.15;double height=1.35E03;/1.35*103或1350.0double height=1e-2;/1.0*10-2或0

15、.01注釋由于浮點(diǎn)數(shù)據(jù)類型是實(shí)際數(shù)值的近似值,因此,一般不要對(duì)浮點(diǎn)數(shù)值進(jìn)行是否相等的比較。Java浮點(diǎn)數(shù)值可代表無(wú)窮大和NaN(非數(shù)值)。Double包裝對(duì)象類用來(lái)定義常量MIN_VALUE、MAX_VALUE、NEGATIVE_INFINITY、POSITIVE_INFINITY和NaN。17.elseelse關(guān)鍵字總是在if-else語(yǔ)句中與if關(guān)鍵字結(jié)合使用。else子句是可選的,如果if條件為false,則執(zhí)行該子句。示例if(condition)else18.extendsextends關(guān)鍵字用在class或interface聲明中,用于指示所聲明的類或接口是其名稱后跟有extend

16、s關(guān)鍵字的類或接口的子類。示例public class Rectangle extends Polygon注釋在上例中,Rectangle類繼承Polygon類的所有public和protected變量和方法。Rectangle類可以重寫Polygon類的任何非final方法。一個(gè)類只能擴(kuò)展一個(gè)其他類。19.falsefalse關(guān)鍵字代表boolean變量的兩個(gè)合法值之一。示例boolean isComplete=false;20.finalfinal關(guān)鍵字可以應(yīng)用于類,以指示不能擴(kuò)展該類(不能有子類)。final關(guān)鍵字可以應(yīng)用于方法,以指示不能重寫任何子類中的方法。示例public fina

17、l class MyFinalClasspublic class MyClasspublic final String myFinalMethod()注釋一個(gè)類不能同時(shí)是abstract又是final。abstract意味著必須擴(kuò)展類,final意味著不能擴(kuò)展類。一個(gè)方法不能同時(shí)是abstract又是final。abstract意味著必須重寫方法,final意味著不能重寫方法。21.finallyfinally關(guān)鍵字用來(lái)定義始終在try-catch-finally語(yǔ)句中執(zhí)行的塊。finally塊通常包含清理代碼,用在部分執(zhí)行try塊后恢復(fù)正常運(yùn)行。示例trycatch(e)finally注釋開

18、始和結(jié)束標(biāo)記和是finally子句語(yǔ)法的一部分,即使該子句只包含一個(gè)語(yǔ)句,也不能省略這兩個(gè)標(biāo)記。每個(gè)try塊都必須至少有一個(gè)catch或finally子句。如果執(zhí)行try塊的任何部分,不論是否出現(xiàn)異常,也不論try或catch塊是否包含return、continue或break語(yǔ)句,都一定會(huì)執(zhí)行finally塊中的代碼。如果不出現(xiàn)異常,控件將跳過try塊,進(jìn)入finally塊。如果在執(zhí)行try塊期間出現(xiàn)異常,并且相應(yīng)的catch塊包含break、continue或return語(yǔ)句,控件將首先穿過finally塊,之后再執(zhí)行break、continue或return。22.floatfloat是

19、Java原始類型。float變量可以存儲(chǔ)單精度浮點(diǎn)值。示例float ratio=.01;float diameter=6.15;float height=1.35E03;/1.35*103或1350.0float height=1e-2;/1.0*10-2或0.01注釋使用此關(guān)鍵字時(shí)應(yīng)遵循下列規(guī)則:Java中的浮點(diǎn)文字始終默認(rèn)為雙精度。要指定單精度文字值,應(yīng)在數(shù)值后加上f或F,如0.01f。由于浮點(diǎn)數(shù)據(jù)類型是實(shí)際數(shù)值的近似值,因此,一般不要對(duì)浮點(diǎn)數(shù)值進(jìn)行是否相等的比較。Java浮點(diǎn)數(shù)值可代表無(wú)窮大和NaN(非數(shù)值)。Float包裝對(duì)象類用來(lái)定義常量MIN_VALUE、MAX_VALUE、NE

20、GATIVE_INFINITY、POSITIVE_INFINITY和NaN。23.forfor關(guān)鍵字用于指定一個(gè)在每次迭代結(jié)束前檢查其條件的循環(huán)。示例int i;for(i=0;imax;i+)注釋for語(yǔ)句的形式為for(initialize;condition;increment)控件流進(jìn)入for語(yǔ)句時(shí),將執(zhí)行一次initialize語(yǔ)句。每次執(zhí)行循環(huán)體之前將計(jì)算condition的結(jié)果。如果condition為true,則執(zhí)行循環(huán)體。每次執(zhí)行循環(huán)體之后,在計(jì)算下一個(gè)迭代的condition之前,將執(zhí)行increment語(yǔ)句。24.ifif關(guān)鍵字指示有條件地執(zhí)行代碼塊。條件的計(jì)算結(jié)果必須是

21、布爾值。示例if(condition)if(condition)else注釋if語(yǔ)句可以有可選的else子句,該子句包含條件為false時(shí)將執(zhí)行的代碼。包含boolean操作數(shù)的表達(dá)式只能包含boolean操作數(shù)。25.implementsimplements關(guān)鍵字在class聲明中使用,以指示所聲明的類提供了在implements關(guān)鍵字后面的名稱所指定的接口中所聲明的所有方法的實(shí)現(xiàn)。示例public class Truck implements IVehicle注釋在上例中,Truck類必須提供在IVehicle接口中所聲明的所有方法的實(shí)現(xiàn)。否則,Truck類將是獨(dú)立的;它可以聲明其他方法和

22、變量,并擴(kuò)展另一個(gè)類。一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。26.importimport關(guān)鍵字使一個(gè)包中的一個(gè)或所有類在當(dāng)前Java源文件中可見??梢圆皇褂猛耆薅ǖ念惷麃?lái)引用導(dǎo)入的類。示例importjava.io.File;.*;注釋當(dāng)多個(gè)包包含同名的類時(shí),許多Java程序員只使用特定的import語(yǔ)句(沒有“*”)來(lái)避免不確定性。27.instanceofinstanceof關(guān)鍵字用來(lái)確定對(duì)象所屬的類。示例if(node instanceof TreeNode)注釋在上例中,如果node是TreeNode類的實(shí)例,或者是TreeNode的子類的實(shí)例,則instanceof

23、表達(dá)式的值將為int是Java原始類型。int變量可以存儲(chǔ)32位的整數(shù)值。示例int number=5;int octalNumber=0377;int hexNumber=0xff;注釋Integer類是int原始類型的包裝對(duì)象類。它定義代表此類型的值的范圍的MIN_VALUE和MAX_VALUE常量。Java中的所有整數(shù)值都是32位的int值,除非值后面有l(wèi)或L(如235L),這表示該值應(yīng)解釋為erfaceinterface關(guān)鍵字用來(lái)聲明新的Java接口,接口是方法的集合。接口是Java語(yǔ)言的一項(xiàng)強(qiáng)大功能。任何類都可聲明它實(shí)現(xiàn)一個(gè)或多個(gè)接口,這意

24、味著它實(shí)現(xiàn)了在這些接口中所定義的所有方法。示例public interface IPolygonpublic float getArea();public int getNumberOfSides();public int getCircumference();注釋實(shí)現(xiàn)了接口的任何類都必須提供在該接口中的所有方法的實(shí)現(xiàn)。一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。30.longlong是Java原始類型。long變量可以存儲(chǔ)64位的帶符號(hào)整數(shù)。示例long number=5;long anotherNumber=34590L;long octalNumber=0377;long hexNumber=0xffl;注

25、釋Long類是long原始類型的包裝對(duì)象類。它定義代表此類型的值的范圍的MIN_VALUE和MAX_VALUE常量。Java中的所有整數(shù)值都是32位的int值,除非值后面有l(wèi)或L(如235L),這表示該值應(yīng)解釋為long。31.nativenative關(guān)鍵字可以應(yīng)用于方法,以指示該方法是用Java以外的語(yǔ)言實(shí)現(xiàn)的。示例native String getProcessorType();注釋Native方法不在此文檔的討論范圍內(nèi)。32.newnew關(guān)鍵字用于創(chuàng)建類的新實(shí)例。示例String sName=newString();float fVal=newFloat(0.15);注釋new關(guān)鍵字后面

26、的參數(shù)必須是類名,并且類名的后面必須是一組構(gòu)造方法參數(shù)(必須帶括號(hào))。參數(shù)集合必須與類的構(gòu)造方法的簽名匹配。=左側(cè)的變量的類型必須與要實(shí)例化的類或接口具有賦值兼容關(guān)系。33.nullnull是Java的保留字,表示無(wú)值。示例Integer i;i=null;String s;if(s!=null)注釋將null賦給非原始變量相當(dāng)于釋放該變量先前所引用的對(duì)象。不能將null賦給原始類型(byte、short、int、long、char、float、double、boolean)變量。34.packagepackage關(guān)鍵字指定在Java源文件中聲明的類所駐留的Java包。示例packagecom

27、.mycompany;public class MyClass注釋package語(yǔ)句(如果出現(xiàn))必須是Java源文件中的第一個(gè)非注釋性文本。在上面的示例中,MyClass類的完全限定類名是com.mycompany.MyClass。如果Java源文件不包含package語(yǔ)句,在該文件中定義的類將位于“默認(rèn)包”中。請(qǐng)注意,不能從非默認(rèn)包中的類引用默認(rèn)包中的類。35.privateprivate關(guān)鍵字是訪問控制修飾符,可以應(yīng)用于類、方法或字段(在類中聲明的變量)。示例public class MyPublicClassprivate class MyPrivateClassprivate int

28、i;private String myMethod()注釋只能在聲明private(內(nèi)部)類、方法或字段的類中引用這些類、方法或字段。在類的外部或者對(duì)于子類而言,它們是不可見的。所有類成員的默認(rèn)訪問范圍都是package訪問,也就是說,除非存在特定的訪問控制修飾符,否則,可以從同一個(gè)包中的任何類訪問類成員。36.protectedprotected關(guān)鍵字是可以應(yīng)用于類、方法或字段(在類中聲明的變量)的訪問控制修飾符。示例public class MyPublicClassprotected class MyPrivateClassprotected int i;protected String

29、 myMethod()注釋可以在聲明protected類、方法或字段的類、同一個(gè)包中的其他任何類以及任何子類(無(wú)論子類是在哪個(gè)包中聲明的)中引用這些類、方法或字段。所有類成員的默認(rèn)訪問范圍都是package訪問,也就是說,除非存在特定的訪問控制修飾符,否則,可以從同一個(gè)包中的任何類訪問類成員。37.publicpublic關(guān)鍵字是可以應(yīng)用于類、方法或字段(在類中聲明的變量)的訪問控制修飾符。示例public class MyPublicClasspublic class MyPrivateClasspublic int i;public String myMethod()注釋可能只會(huì)在其他任何

30、類或包中引用public類、方法或字段。所有類成員的默認(rèn)訪問范圍都是package訪問,也就是說,除非存在特定的訪問控制修飾符,否則,可以從同一個(gè)包中的任何類訪問類成員。38.returnreturn關(guān)鍵字會(huì)導(dǎo)致方法返回到調(diào)用它的方法,從而傳遞與返回方法的返回類型匹配的值。示例public voidmyVoidMethod()return;public String myStringMethod()String s=myresponse;return s;public int myIntMethod()int i=5;return(i);注釋如果方法具有非void的返回類型,return語(yǔ)句必

31、須具有相同或兼容類型的參數(shù)。返回值兩側(cè)的括號(hào)是可選的。39.shortshort是Java原始類型。short變量可以存儲(chǔ)16位帶符號(hào)的整數(shù)。示例short number=5;short octalNumber=0077;short hexNumber=0xff;注釋Short類是short原始類型的包裝對(duì)象類。它定義代表此類型的值的范圍的MIN_VALUE和MAX_VALUE常量。Java中的所有整數(shù)值都是32位的int值,除非值后面有l(wèi)或L(如235L),這表示該值應(yīng)解釋為long。40.staticstatic關(guān)鍵字可以應(yīng)用于內(nèi)部類(在另一個(gè)類中定義的類)、方法或字段(類的成員變量)。示

32、例public class MyPublicClasspublic finalstatic int MAX_OBJECTS=100;static int _numObjects=0;static class MyStatic static int getNumObjects()注釋通常,static關(guān)鍵字意味著應(yīng)用它的實(shí)體在聲明該實(shí)體的類的任何特定實(shí)例外部可用。static(內(nèi)部)類可以被其他類實(shí)例化和引用(即使它是頂級(jí)類)。在上面的示例中,另一個(gè)類中的代碼可以實(shí)例化MyStaticClass類,方法是用包含它的類名來(lái)限定其名稱,如MyClass.MyStaticClass。static字段(

33、類的成員變量)在類的所有實(shí)例中只存在一次??梢詮念惖耐獠空{(diào)用static方法,而不用首先實(shí)例化該類。這樣的引用始終包括類名作為方法調(diào)用的限定符。在上面的示例中,MyClass類外部的代碼以MyClass.getNumObjects()的形式調(diào)用getNumObjects()static方法。模式:public final staticvarName=;通常用于聲明可以在類的外部使用的類常量。在引用這樣的類常量時(shí)需要用類名加以限定。在上面的示例中,另一個(gè)類可以用MyClass.MAX_OBJECTS形式來(lái)引用MAX_OBJECTS常量。41.supersuper關(guān)鍵字用于引用使用該關(guān)鍵字的類的超

34、類。示例public class MyClasspublic MyClass(String arg)super(arg);public String myStringMethod()return super.otherStringMethod();注釋作為獨(dú)立語(yǔ)句出現(xiàn)的super表示調(diào)用超類的構(gòu)造方法。super.()表示調(diào)用超類的方法。只有在如下情況中才需要采用這種用法:要調(diào)用在該類中被重寫的方法,以便指定應(yīng)當(dāng)調(diào)用在超類中的該方法。42.switchswitch語(yǔ)句用于基于某個(gè)表達(dá)式選擇執(zhí)行多個(gè)代碼塊中的某一個(gè)。示例int arg=;switch(arg)case1:break;case2:

35、break;default:break;char arg=;switch(arg)case y:case Y:break;case n:case N:break;default:break;注釋switch條件的計(jì)算結(jié)果必須等于byte、char、short或int。case塊沒有隱式結(jié)束點(diǎn)。break語(yǔ)句通常在每個(gè)case塊末尾使用,用于退出switch語(yǔ)句。如果沒有break語(yǔ)句,執(zhí)行流將進(jìn)入所有后面的case和/或default塊。43.synchronizedsynchronized關(guān)鍵字可以應(yīng)用于方法或語(yǔ)句塊,并為一次只應(yīng)由一個(gè)線程執(zhí)行的關(guān)鍵代碼段提供保護(hù)。示例public clas

36、s MyClasspublic synchronized static String mySyncStatic Method()public synchronized String mySyncMethod()public class MyOtherClassObject someObj;public String myMethod()synchronized(someObj)注釋synchronized關(guān)鍵字可防止代碼的關(guān)鍵代碼段一次被多個(gè)線程執(zhí)行。如果應(yīng)用于靜態(tài)方法(如上例中的MySyncStatic Method),那么,當(dāng)該方法一次由一個(gè)線程執(zhí)行時(shí),整個(gè)類將被鎖定。如果應(yīng)用于實(shí)例方法(

37、如上例中的MySyncMethod),那么,當(dāng)該方法一次由一個(gè)線程訪問時(shí),該實(shí)例將被鎖定。如果應(yīng)用于對(duì)象或數(shù)組,當(dāng)關(guān)聯(lián)的代碼塊一次由一個(gè)線程執(zhí)行時(shí),對(duì)象或數(shù)組將被鎖定。44.thisthis關(guān)鍵字用于引用當(dāng)前實(shí)例。示例public class MyClassint number;public MyClass(int number)this.number=number;注釋當(dāng)引用可能不明確時(shí),可以使用this關(guān)鍵字來(lái)引用當(dāng)前的實(shí)例。在上面的示例中,構(gòu)造方法參數(shù)number與類的成員變量同名。this.number明確表示MyClass的該實(shí)例的number成員變量。45.throwthrow關(guān)鍵字用于引發(fā)異常。示例import java.io.IOException;public class MyClasspublic methodreadFile(String filename)throws IOExcep

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論