java中 final 與 static

轉(zhuǎn)載:http://www.cnblogs.com/honoka/p/4795891.html

1挨下、final

Java關(guān)鍵詞final有“無(wú)法改變”的含義脐湾,主要用于修飾非抽象類(lèi)、方法或者變量愁铺。使用時(shí)注意:

(1)final類(lèi)不能被繼承闻鉴,沒(méi)有子類(lèi),final類(lèi)中的方法默認(rèn)是final的瓶竭。
(2)final方法不能被子類(lèi)的方法覆蓋渠羞,但可以被繼承。
(3)final成員變量表示常量腋舌,只能被賦值一次渗蟹,賦值后值不再改變。
(4)final不能用于修飾構(gòu)造方法授艰。
(5)父類(lèi)的private成員方法不能被子類(lèi)使用世落,故private類(lèi)型方法默認(rèn)為final類(lèi)型。

final類(lèi):

final類(lèi)無(wú)法被繼承谷朝,故當(dāng)需要一個(gè)完全封裝、無(wú)法改變的類(lèi)時(shí)杈帐,可以使用final修飾增強(qiáng)安全性专钉。

final方法:

主要用于將方法鎖定,防止子類(lèi)修改站叼。
final方法可以被繼承菇民,但是不能被重寫(xiě)(Overriding)。final方法會(huì)被“靜態(tài)綁定”(也就是在編譯期綁定)翔试。

final變量:

通常用final修飾的成員變量表示常量复旬,一般修飾三種類(lèi)型的變量:靜態(tài)變量、實(shí)例變量和局部變量壁涎。
只能被賦值一次志秃, 不可改變。
在使用之前必須初始化竟坛,(要么在聲明的時(shí)候初始化钧舌,要么在類(lèi)的構(gòu)造函數(shù)中初始化)洼冻。

final參數(shù):

函數(shù)參數(shù)使用final修飾符時(shí),則只能讀取該參數(shù)撞牢,不能改變。


2所宰、static

static一般表示“靜態(tài)”的意思仔粥,可修飾成員變量和方法,也可形成靜態(tài)static代碼塊勘究。另外注意Java中沒(méi)有全局變量的概念斟冕。

被static修飾的成員變量或方法獨(dú)立于該類(lèi)的對(duì)象缅阳,只要該類(lèi)被加載,可以在對(duì)象創(chuàng)建即實(shí)例化之前訪問(wèn)秀撇。

靜態(tài)變量

被static修飾的變量即為靜態(tài)變量向族,當(dāng)JVM加載類(lèi)后,可以通過(guò)類(lèi)名直接訪問(wèn)再扭,類(lèi)的所有實(shí)例共享一個(gè)static變量夜矗。

靜態(tài)方法

靜態(tài)方法可以直接通過(guò)類(lèi)名調(diào)用紊撕,但是不能直接訪問(wèn)所屬類(lèi)的實(shí)例變量和方法,只能訪問(wèn)所屬類(lèi)的靜態(tài)變量和方法区赵,這是因?yàn)閷?shí)例成員只與特定對(duì)象關(guān)聯(lián)浪南。
static方法中不能使用this、super關(guān)鍵字患整,不能訪問(wèn)非靜態(tài)的域拜效,也不能訪問(wèn)非靜態(tài)的方法。

靜態(tài)代碼塊

為類(lèi)中獨(dú)立于類(lèi)成員的static語(yǔ)句塊各谚,不在任何方法體內(nèi)紧憾,當(dāng)JVM加載類(lèi)時(shí),就會(huì)執(zhí)行靜態(tài)代碼塊昌渤,無(wú)需等待實(shí)例化赴穗,static語(yǔ)句塊可以多個(gè),JVM會(huì)按照它們的先后順序依次執(zhí)行膀息。


3般眉、static和final一起時(shí)有什么作用

static final一起使用修飾成員變量或方法時(shí),可以理解為“全局常量”甸赃,均可通過(guò)類(lèi)名直接訪問(wèn)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末冗酿,一起剝皮案震驚了整個(gè)濱河市埠对,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌裁替,老刑警劉巖项玛,帶你破解...
    沈念sama閱讀 212,599評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異弱判,居然都是意外死亡襟沮,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,629評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)昌腰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)开伏,“玉大人,你說(shuō)我怎么就攤上這事剥哑」柙颍” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,084評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵株婴,是天一觀的道長(zhǎng)怎虫。 經(jīng)常有香客問(wèn)我,道長(zhǎng)困介,這世上最難降的妖魔是什么大审? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,708評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮座哩,結(jié)果婚禮上徒扶,老公的妹妹穿的比我還像新娘。我一直安慰自己根穷,他們只是感情好姜骡,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,813評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布导坟。 她就那樣靜靜地躺著,像睡著了一般圈澈。 火紅的嫁衣襯著肌膚如雪惫周。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 50,021評(píng)論 1 291
  • 那天康栈,我揣著相機(jī)與錄音递递,去河邊找鬼。 笑死啥么,一個(gè)胖子當(dāng)著我的面吹牛登舞,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播悬荣,決...
    沈念sama閱讀 39,120評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼菠秒,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了隅熙?” 一聲冷哼從身側(cè)響起稽煤,我...
    開(kāi)封第一講書(shū)人閱讀 37,866評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤核芽,失蹤者是張志新(化名)和其女友劉穎囚戚,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體轧简,經(jīng)...
    沈念sama閱讀 44,308評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡驰坊,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,633評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了哮独。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拳芙。...
    茶點(diǎn)故事閱讀 38,768評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖皮璧,靈堂內(nèi)的尸體忽然破棺而出舟扎,到底是詐尸還是另有隱情,我是刑警寧澤悴务,帶...
    沈念sama閱讀 34,461評(píng)論 4 333
  • 正文 年R本政府宣布睹限,位于F島的核電站,受9級(jí)特大地震影響讯檐,放射性物質(zhì)發(fā)生泄漏羡疗。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,094評(píng)論 3 317
  • 文/蒙蒙 一别洪、第九天 我趴在偏房一處隱蔽的房頂上張望叨恨。 院中可真熱鬧,春花似錦挖垛、人聲如沸痒钝。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,850評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)送矩。三九已至站宗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間益愈,已是汗流浹背梢灭。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,082評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蒸其,地道東北人敏释。 一個(gè)月前我還...
    沈念sama閱讀 46,571評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像摸袁,于是被迫代替她去往敵國(guó)和親钥顽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,666評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法靠汁,類(lèi)相關(guān)的語(yǔ)法蜂大,內(nèi)部類(lèi)的語(yǔ)法,繼承相關(guān)的語(yǔ)法蝶怔,異常的語(yǔ)法奶浦,線程的語(yǔ)...
    子非魚(yú)_t_閱讀 31,602評(píng)論 18 399
  • 一:java概述:1,JDK:Java Development Kit踢星,java的開(kāi)發(fā)和運(yùn)行環(huán)境澳叉,java的開(kāi)發(fā)工...
    ZaneInTheSun閱讀 2,635評(píng)論 0 11
  • static表示“全局”或者“靜態(tài)”的意思,用來(lái)修飾成員變量和成員方法沐悦,也可以形成靜態(tài)static代碼塊成洗,但是Ja...
    安安靜靜寫(xiě)代碼閱讀 9,621評(píng)論 1 7
  • Java關(guān)鍵字final瓶殃、static使用總結(jié) 一、final 根據(jù)程序上下文環(huán)境副签,Java關(guān)鍵字final有“這...
    孑孖閱讀 379評(píng)論 0 0
  • Advanced Language Features 知識(shí)點(diǎn):一. static修飾符 static修飾符可以用來(lái)...
    風(fēng)景涼閱讀 438評(píng)論 0 0