這篇文章給大家介紹Java中靜態(tài)static關(guān)鍵字的原理分析,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
static關(guān)鍵字既可以修飾成員變量,也可以修改成員方法,修飾的成員變量和成員方法可以直接通過(guò)類名調(diào)用,也可以通過(guò)對(duì)象調(diào)用(其實(shí)即使是通過(guò)對(duì)象調(diào)用,也會(huì)被翻譯成類名調(diào)用),建議通過(guò)類名調(diào)用。
成員方法用static修飾后,就成為了靜態(tài)方法,靜態(tài)方法不屬于對(duì)象,而是屬于類。
注意事項(xiàng):
1.靜態(tài)方法中不能使用this,因?yàn)閠his指的是當(dāng)前對(duì)象,而靜態(tài)方法是通過(guò)類名調(diào)用的
2.靜態(tài)不能直接訪問(wèn)非靜態(tài),因?yàn)閮?nèi)存中是【先】有靜態(tài),【后】有非靜態(tài),可能會(huì)出現(xiàn)調(diào)用的東西不存在
3.調(diào)用同一個(gè)類中的靜態(tài)方法,可以直接寫方法名,省略類名,默認(rèn)自帶類名
4.當(dāng)?shù)谝淮斡玫奖绢悤r(shí),靜態(tài)代碼塊只執(zhí)行一次,后續(xù)訪問(wèn)也不再執(zhí)行
5.靜態(tài)內(nèi)容總是優(yōu)先于非靜態(tài)的,所以靜態(tài)代碼塊優(yōu)先于構(gòu)造方法執(zhí)行
靜態(tài)代碼塊典型用途,用來(lái)一次性對(duì)靜態(tài)成員變量進(jìn)行賦值。
關(guān)于Java中靜態(tài)static關(guān)鍵字的原理分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。