Java關鍵字

既然是說關鍵字,先來看看Java都有哪些關鍵字?

1、基本的數據類型:

boolean、byte、char、double、float、int、long、short
2、類和方法相關
package、import、class、interface、abstract、final、private、protected、public、static、new、this、void
3、流程控制:
if、else、switch、case、default、break、continue、for、do、while
4、異常捕獲
try、catch、finally、throw、throws
5、類的關係
extends、implements、super
6、真假
true、false
7、判斷類型
instanceof
8、同步
synchronized、volatile
9、其他

native、null、return、transient


關鍵字梳理出來了,我們就看看唄:

1、基本的數據類型:

boolean、byte、char、double、float、int、long、short

這一類不用多說了,都明白!


2、類和方法相關
package、import、class、interface、abstract、final、private、protected、public、static、new、this、void

package、import:這哥倆在類中都可以看到;

class、interface:分別定義一個類和一個接口的關鍵字;

abstract:抽象的,可以定義一個類,也可以定義一個方法;

final:最終的,可以定義類和變量,被它定義的類不能再被其他類繼承,被它定義的變量的值同樣也不能再修改;

private、protected、public:訪問類型控制:

private:私有的,只能被本類對象訪問;

protected:受保護的,只能被同一個包內的對象訪問;

public:公有的,都可以訪問;

static:靜態,可以定義類、方法、變量。

new:創建一個對象唄;

this:本類對象

void:定義返回值類型,void表示沒有返回值


3、流程控制:
if、else、switch、case、default、break、continue、for、do、while

if、else:判斷,然後分別執行不同的代碼;

switch、case、default:這三哥倆經常一起用,switch裏面只能是int類型的值,這個限制要明白,case:表示不同的情況,一般只執行一種情況,然後後面會跟一個break,default:表示前面都沒有這種情況;

continue:一般在循環裏面使用的比較多,說到這個就要把break拿出來一起講,它們倆的區別是:break表示不再執行循環,而continue表示終止此次循環,下一次循環還是照樣執行的。這點必須要明白;

for:循環,沒什麼好講的啦,我們一般會在裏面寫三個條件,中間那個纔是真正控制循環的條件;當然也可以不寫三個,但,必須要用逗號分開,裏面第二個條件是一定要的,否則將是死循環,很可怕的;、

while和do、while:都是循環,while裏面的是判斷條件,有時候我們也會寫true或者1進去,如果是這樣的話,就必須要有break用於跳出循環,否則也是死循環。說到while,就要說說do-while,while是先判斷,然後執行循環體,do-while是先執行循環體,然後執行判斷是否要執行下一次循環,最大的區別是,while有可能循環體一次都不執行,但do-while至少會執行一次循環體。


4、異常捕獲
try、catch、finally、throw

try、catch:這哥倆是分不開的,有try,後面肯定就有catch,finally就未必了,這個看實際的情況,例如IO操作,後面都是要跟的,finally裏面就是對IO流的關閉。throw,可以說剛好和try、catch相反,try、catch是捕獲異常,而throw是拋出異常,也就是說可能出現的異常自己不處理,給調用者去處理。我們一般會在捕獲異常的時候拋出去。

throws,可能拋出異常。一般在方法中聲明。如果一個方法裏面有可能會出現異常,但本方法不對異常做處理的話(也就是本方法內不做try-catch),那麼就可以在方法聲明的時候拋出。


5、類的關係
extends、implements、super

extends:繼承,這個不用解釋了,但有一點需要清楚的是:Java中,只能繼承一個類,不能同時繼承多個類。

implements:實現,一般是類實現某個接口的時候就用這個,和extends不一樣的是,一個類可以實現多個接口。

super:超類,一般來說,我們在重寫父類的方法的時候使用的比較多,super()指的是執行父類中相應的方法。super()有一點需要注意的是:有些時候我們super()會放在方法的前面,有些時候會放在方法的後面,放在前面指的是先執行父類相應的方法再執行這個方法體裏面語句,super()放後面指的是先執行本方法提,再執行父類的,這兩點是有區別的。


6、真假
true、false:這個不需要解釋了。


7、判斷類型
instanceof:判斷某個對象是不是某個類的對象。這話說起來好像有點繞,這個說吧,student是一個學生對象,teacher是一個老師對象,Student是學生類,那麼student instanceof Student 的返回值就是true,而teacher instanceof Student 的返回值就是false。


8、同步
synchronized、volatile:這兩都和同步相關

synchronized:同步,如果定義在類中的某塊或方法中,那麼意味着在同一時間內,只能有一個線程對它進行訪問。同樣,它定義在一個對象或一個變量中,也是隻能由一個線程可以對其進行訪問。

volatile:它定義在變量中,可以確保每個線程在讀取這個變量的值的時候能夠確保它讀到最新的值,也就是最後修改的值。


9、其他

native、null、return、transient

native:通常想到的是native method,native method其實就是java調用非java代碼塊的接口。

null:空,這也不用解釋了。

return:一般用作方法的返回。後面跟返回值。

transient:這個,要和序列化接口(Serilizable)一起說,實現了這個接口的類可以實現對它的對象進行序列化操作,而transient 定義在實現了序列化的類中的屬性的時候,表示該屬性不能被序列化。


(待更新。。。)

發佈了38 篇原創文章 · 獲贊 25 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章