全目標70分之 Java基礎(二):靜態(tài)蚕泽、作用域與代碼塊

一、static關鍵字

? ? ? ? static在java中表示靜態(tài)的意思桥嗤。

? ? ? ? 1须妻、為什么使用static靜態(tài)關鍵字?

? ? ? ? ????如果將一個常用固定值字段定義為非靜態(tài)對象字段泛领,則如果創(chuàng)建了100個對象荒吏,就會有100個對象實例,也會有100個該字段的實例字段渊鞋,分別對應每一個對象绰更。但如果將其定義為靜態(tài)對象字段,則每個類只會有一個這樣的字段锡宋,意味著會節(jié)省很多不必要開支的內(nèi)存空間儡湾。

? ? ? ? ????靜態(tài)字段歸屬于類,意味著沒有創(chuàng)建該類的對象执俩,也可以通過該類名獲取到該字段的值徐钠,十分方便。

? ? ? ? ????同理奠滑,static關鍵字修飾的方法丹皱,也可以被共享,被稱為靜態(tài)方法宋税,也可以通過類名訪問到摊崭。

? ? ? ?? ???聲明格式:

? ? ? ? ????靜態(tài)字段? static 類型 字段名;? 訪問:類名.靜態(tài)字段名

? ? ? ????? 靜態(tài)方法? ?【訪問權限修飾符】 static 方法返回值 方法名(參數(shù)名)??訪問:類名.靜態(tài)方法名

? ? ? ? ????靜態(tài)代碼塊? ??

????????????????????????????static {

? ? ? ? ? ? ? ? ? ? ? ? ? ? }? ??

? ? ? ????? 靜態(tài)內(nèi)部類

? ? ? ? ? ? ? ? ? ? ? ? ? ? class 外部類名{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? public static class 內(nèi)部類名{

????????????????????????????????????????}

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? 靜態(tài)變量除外部類內(nèi)杰赛,只能聲明在靜態(tài)內(nèi)部類中呢簸。可以使用對象調用靜態(tài)方法乏屯,是合法的根时,但這樣容易引起混淆,所以建議使用類名而不是對象來調用辰晕。

? ? ? ? 2蛤迎、靜態(tài)常量

? ? ? ? ? ? 可以使用static 和 final關鍵字來定義一個靜態(tài)常量。

? ? ? ? ? ? public static final long serverId = 10000001L;

? ? ? ? ? ? 我們使用了兩個關鍵字來定義了一個靜態(tài)常量含友,而效果似乎和定義常量一樣替裆,都是通過類名.字段名來訪問,而且都是無法更改窘问,那么為什么要多此一舉呢辆童?

? ? ? ? ? ? 是因為如果省略了static關鍵字,該常量字段就是變成了所屬類的一個實例字段惠赫,需要通過類的對象去訪問把鉴,而且每一個類的對象都一個該字段的副本,所以要加上static關鍵字儿咱,保證該類只會存在一份這樣的字段庭砍。

二、作用域

?java四個作用域關鍵字和范圍

? ? ????java三個作用域關鍵字概疆,都可以來修飾類和實例的變量逗威、方法(包括內(nèi)部類中不包含匿名內(nèi)部類、局部內(nèi)部類)岔冀,但不可以用作方法內(nèi)修飾變量凯旭。default關鍵字無需聲明,不加修飾符即是default使套。

? ??1、public

? ? ? ? 定義為public的類侦高、方法和變量即為公開的嫉柴,可被其他類訪問。


? ? ? ? 但訪問方法奉呛、變量的前提是计螺,先具有訪問到該類的權限才能進一步的訪問夯尽。

? ? 2、private

? ? ? ? 定義為private的類(外部類也就是跟.java文件同名的類登馒,不可以用private修飾)匙握、方法、變量不可被其他類訪問陈轿,只對類內(nèi)部可見圈纺。


私有變量b、私有方法setB() 無法被其他類訪問到

? ? ? ? 3麦射、protected

? ? ? ? ? ? ? 定義為protected的類(外部類無法修飾)蛾娶、方法、變量潜秋,可被同包或子孫類訪問蛔琅。

? ? ? ? 4、default

? ? ? ? ? ? ? 不加修飾符即是默認修飾為default半等,類(包括外部類)揍愁、方法、變量可被同包的其他類訪問杀饵。

三莽囤、代碼塊

? ? ? ? 在java中{}中的即為代碼塊

? ? ? ? 執(zhí)行優(yōu)先級:靜態(tài)代碼塊>main方法>構造代碼塊>構造方法 (優(yōu)先級從高到低)

? ? ? ? 靜態(tài)代碼塊只會執(zhí)行一次,構造代碼塊會在每次創(chuàng)建對象時執(zhí)行切距。

? ? ? ? 1朽缎、普通代碼塊:

? ? ? ? ? ? ? ?在方法或語句中的{}就是普通代碼塊,普通代碼和語句的執(zhí)行順序谜悟,由它們在代碼中的次序決定话肖,前邊的就先執(zhí)行。


根據(jù)代碼出現(xiàn)的次序決定x最終的值

????????????可以看到在普通代碼塊中葡幸,變量的聲明有所不同最筒,代碼塊中聲明的變量,方法語句中無法直接使用需再次聲明蔚叨,聲明后下邊的代碼塊中可直接使用該變量床蜘,無需再次聲明。

? ? ? ? 2蔑水、構造代碼塊:

? ? ? ? ? ? 類中{}中的就是構造代碼塊邢锯,構造代碼塊先于構造方法執(zhí)行,在每次創(chuàng)建對象的時候搀别。


每次創(chuàng)建對象時都會執(zhí)行構造代碼塊丹擎,且先于構造方法執(zhí)行

? ? ? ? 3、靜態(tài)代碼塊

? ? ? ? ? ? ? 類中加static修飾的{}的語句就是靜態(tài)代碼塊歇父,由虛擬機控制只執(zhí)行一次蒂培,先于所有代碼塊及構造方法執(zhí)行再愈。


先于構造代碼塊和構造方法,且只執(zhí)行一次

? ? ? ? 4护戳、同步代碼塊

? ? ? ? ? ? ? synchronized(obj){

? ? ? ? ? ? ? }

? ? ? ? 當線程進入以上代碼塊時践磅,即進入了同步代碼塊,將獲得obj的鎖灸异。(學習并發(fā)程的時候再詳細講解)

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市羔飞,隨后出現(xiàn)的幾起案子肺樟,更是在濱河造成了極大的恐慌,老刑警劉巖逻淌,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件么伯,死亡現(xiàn)場離奇詭異,居然都是意外死亡卡儒,警方通過查閱死者的電腦和手機田柔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來骨望,“玉大人硬爆,你說我怎么就攤上這事∏骛” “怎么了缀磕?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長劣光。 經(jīng)常有香客問我袜蚕,道長,這世上最難降的妖魔是什么绢涡? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任牲剃,我火速辦了婚禮,結果婚禮上雄可,老公的妹妹穿的比我還像新娘凿傅。我一直安慰自己,他們只是感情好滞项,可當我...
    茶點故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布狭归。 她就那樣靜靜地躺著,像睡著了一般文判。 火紅的嫁衣襯著肌膚如雪过椎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天戏仓,我揣著相機與錄音疚宇,去河邊找鬼亡鼠。 笑死,一個胖子當著我的面吹牛敷待,可吹牛的內(nèi)容都是我干的间涵。 我是一名探鬼主播,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼榜揖,長吁一口氣:“原來是場噩夢啊……” “哼勾哩!你這毒婦竟也來了?” 一聲冷哼從身側響起举哟,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤思劳,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后妨猩,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體潜叛,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年壶硅,在試婚紗的時候發(fā)現(xiàn)自己被綠了威兜。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡庐椒,死狀恐怖椒舵,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情约谈,我是刑警寧澤逮栅,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站窗宇,受9級特大地震影響措伐,放射性物質發(fā)生泄漏。R本人自食惡果不足惜军俊,卻給世界環(huán)境...
    茶點故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一侥加、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧粪躬,春花似錦担败、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至泳唠,卻和暖如春狈网,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工拓哺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留勇垛,地道東北人。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓士鸥,卻偏偏與公主長得像闲孤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子烤礁,可洞房花燭夜當晚...
    茶點故事閱讀 43,724評論 2 351