java static變量可以賦值嗎?
可以賦值的。static的主要作用是靜態(tài)成員,指該變量的實(shí)例在內(nèi)存中之存放一次。賦值是可以隨便改的。
java中static關(guān)鍵字
static是java中非常重要的一個關(guān)鍵字,主要有兩種作用:
● 第一:為某特定數(shù)據(jù)類型或?qū)ο蠓峙鋯我坏拇鎯臻g,而與創(chuàng)建對象的個數(shù)無關(guān)。
● 第二:實(shí)現(xiàn)某個方法或?qū)傩耘c類而不是對象關(guān)聯(lián)在一起
簡單來說,在Java語言中,static主要有5中使用情況:成員變量、成員方法、代碼塊,內(nèi)部類和靜態(tài)導(dǎo)包。
基本用法:
1、static修飾成員變量:該成員變量屬于類變量,可以通過 ClassName.attributeName 直接引用,而不需要new出類的實(shí)例。
2、static修飾成員方法:該方法屬于類的方法,可以通過 ClassName.methodName 直接引用,而不需要new出類的實(shí)例。
3、static修飾代碼塊:僅在類初始化的時候執(zhí)行一次,且加載順序是嚴(yán)格按照類中靜態(tài)資源的定義順序來加載的;靜態(tài)代碼塊對于定義在它之后的靜態(tài)變量,可以賦值,但是不能訪問。;父類代碼塊->子類代碼塊。
4、static修飾內(nèi)部類:static不能修飾普通類,只能修飾內(nèi)部類,被static修飾的內(nèi)部類的創(chuàng)建方式: new OuterClass.InnerClass()。
5、static導(dǎo)入包:語法“import static java.lang.Math.*”,這樣在類中就可以直接使用Math類中的靜態(tài)方法而不需要寫類名,個人認(rèn)為,在頻繁使用某個類的時候比較方便,但是降低了可讀性。并且不建議導(dǎo)入*
推薦學(xué)習(xí):Java視頻教程