java之static關鍵字

高傑才_Android發表於2014-09-27

介紹:

1、在類中,用static宣告的成員變數為靜態成員變數,它為該類的公用變數,在第一次使用時被初始化,對於該類的所有物件來說,static成員變數只有一份。

2、用static宣告的方法為靜態方法,在呼叫該方法時,不會將物件的引用傳遞給它,所以在static方法中不可訪問非static成員。(靜態方法不再是針對於某個物件呼叫,所以不能訪問非靜態成員)

3、可以通過物件引用或類名(不需要例項化)訪問靜態成員。

注:靜態變數多用於計數功能。(單例模式之類的經常用到)

程式code:

public class TestStatic{
    private static int sid;
    private String name;
    int id;
    public TestStatic(String name){
        this.name = name;
        id = sid ++;
    }
    private void info(){
        System.out.println("My name is:"+name+",Id is:"+id+".");
    }
    public static void main(String args[]){
        TestStatic.sid = 100;
        TestStatic s1 = new TestStatic("lili");
        TestStatic s2 = new TestStatic("tom");
        s1.info();
        s2.info();
    }
}

執行結果:

相關文章