Java 類變量賦值方法操作demo

概念:

         類變量也稱爲靜態變量,在類中以 static 關鍵字聲明,但必須在方法之外。無論一個類創建了多少個對象,類只擁有類變量的一份拷貝。靜態變量除了被聲明爲常量外很少使用。常量是指聲明爲public/private,final和static類型的變量。常量初始化後不可改變。靜態變量儲存在靜態存儲區。經常被聲明爲常量,很少單獨使用static聲明變量。靜態變量在第一次被訪問時創建,在程序結束時銷燬。與實例變量具有相似的可見性。但爲了對類的使用者可見,大多數靜態變量聲明爲public類型。默認值和實例變量相似。數值型變量默認值是0,布爾型默認值是false,引用類型默認值是null。變量的值可以在聲明的時候指定,也可以在構造方法中指定。此外,靜態變量還可以在靜態語句塊中初始化。靜態變量可以通過:ClassName.VariableName的方式訪問。類變量被聲明爲public static final類型時,類變量名稱一般建議使用大寫字母。如果靜態變量不是public和final類型,其命名方式與實例變量以及局部變量的命名方式一致。

 

class A {
    public static String StaticA = "A";

    static {
        StaticA = "A1";
    }

    public A() {
        StaticA = "A2";
    }

    public static void Change() {
        StaticA = "A3";
    }

    public static void Change2() {
        StaticA = "A4";
    }
}

class B {
    public static final String StaticB;

    static {
        StaticB = "StaticB";
    }
}

public class StaticTest {
    private static Integer StaticInt = 1;
    private Integer random = 1;

    public StaticTest() {
        StaticInt++;
        random++;
    }

    public static void main(String[] args) {
        System.out.println("類變量與對象變量的值變化");
        StaticTest test = new StaticTest();
        System.out.println("實例test:StaticInt:" + test.StaticInt + "----random:" + test.random);

        StaticTest test2 = new StaticTest();
        System.out.println("實例test2:StaticInt:" + test.StaticInt + "----random:" + test.random);


        System.out.println("靜態變量賦值");
        System.out.println("靜態語句塊起作用:" + A.StaticA);

        A a = new A();
        System.out.println("構造器起作用:" + a.StaticA);

        a.Change();
        System.out.println("靜態方法1起作用:" + A.StaticA);

        a.Change2();
        System.out.println("靜態方法2起作用:" + A.StaticA);

        System.out.println("常量賦值");
        System.out.println("靜態語句賦值:" + B.StaticB);
    }
}

timit@TIMI:/home/workplace$ java StaticTest 
類變量與對象變量的值變化
實例test:StaticInt:2----random:2
實例test2:StaticInt:3----random:2
靜態變量賦值
靜態語句塊起作用:A1
構造器起作用:A2
靜態方法1起作用:A3
靜態方法2起作用:A4
常量賦值
靜態語句賦值:StaticB

發佈了101 篇原創文章 · 獲贊 16 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章