static關(guān)鍵字
一、作用:是一個(gè)修飾符,用于修飾成員(成員變量,成員方法)1、被static 修飾后的成員變量只有一份2、當(dāng)成員被static修飾之后,多了一種訪問方式,除了可以被對(duì)象調(diào)用之外還可以被類名直接調(diào)用(類名.靜態(tài)成員)
二、static的特點(diǎn):1、隨著類的加載而被加載2、優(yōu)先于對(duì)象的存在3、被所有的對(duì)象所共享的4、可以直接被類名做調(diào)用三、存放位置:1、靜態(tài)成員屬性(類變量)隨著類的加載而存在于data內(nèi)存區(qū)。2、普通成員屬性隨著對(duì)象的建立而存在于堆內(nèi)存。四、生命周期:1、靜態(tài)成員(類變量)生命周期最長(zhǎng),隨著類的消失而消失2、非靜態(tài)成員(實(shí)例變量)生命周期比靜態(tài)成員短,隨著對(duì)象的消失而消失五、方法的注意事項(xiàng):1、靜態(tài)的方法只能訪問靜態(tài)的成員2、非靜態(tài)的方法即能訪問靜態(tài)的成員(成員屬性,成員方法)也能訪問非靜態(tài)的成員3、今天方法中是不可以定義 this、super關(guān)鍵字,因?yàn)殪o態(tài)優(yōu)先于對(duì)象存在,所以靜態(tài)方法不可以出現(xiàn)this
class G{ String name; int age; //成員屬性(另一種叫法(實(shí)例變量) static String country; //靜態(tài)成員屬性(另一種叫法:類變量) static void jt(){ System.out.PRintln(country); //靜態(tài)方法里面訪問靜態(tài)成員屬性時(shí),不能使用this關(guān)鍵字,不能訪問非靜態(tài)成員屬性。 }}public class Index{ public static void main(String[] args){ G A = new G(); A.country = "小明"; G B = new G(); System.out.println(A.country); //對(duì)象A,定義了country成員屬性的值,可以輸出,這是常規(guī)的方式 System.out.println(B.country); //對(duì)象B,沒有定義country成員屬性的值,也可以輸出 System.out.println(G.country);//類名.static成員,也可以輸出 B.jt(); //調(diào)用靜態(tài)方法 }}新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注