1. 程式人生 > 其它 >一段程式碼看懂Java各種變數的定義及呼叫

一段程式碼看懂Java各種變數的定義及呼叫

class Variable_test{
    Variable_test(){}
    String MemberVariable="I am a membervariable in Variable_test Class!";
    static String StaticVariable="I am a staticvariable in Variable_test Class!";
    public void say(){
        String MemberVariable="I am a localvariable in Variable_test Class!";
        System.out.println(MemberVariable);
        System.out.println(this.MemberVariable);
        System.out.println(Variable_test.StaticVariable);
        System.out.println(Variable.StaticVariable_public);
        Variable t=new Variable();
        System.out.println(t.MemberVariable_public);
    }
}

public class Variable {
    static String StaticVariable_public="I am a staticvariable in public class!";
    String MemberVariable_public="I am a membervariable in public class!";
    public static void main(String[] args) {
        Variable_test test=new Variable_test();
        test.say();
    }
}


有static關鍵詞的變數稱為類變數,又叫靜態變數,呼叫時可直接通過“類名.變數名”呼叫,該關鍵詞不能用在方法中。

無static關鍵詞的變數叫成員變數,又叫例項變數,呼叫時需要先例項化一個物件,再通過“物件名.變數名”呼叫。

如果區域性變數的名字和成員變數的名字相同(儘量避免),那麼在該方法中使用成員變數的話需要加關鍵詞this。