最近回顧了一下java的基礎,有點收穫,決定以這個開頭,陸續寫點基礎文章,希望對大家有所幫助
用static 聲明的變量是屬於這個類的,並且在該類的所有對象實例中的值都是一樣的,也就是你每聲明一個新的對象的這個static變量都是一樣的,如果在一個對象中對其進行修改的話,則在所有對象中這個變量的值都會改變,因爲你實際上修改的是類的值。
例如:
package david;
public class Person1 {
//獲取所聲明的對象的值
static int i=0;
public Person1() {
i++;
// TODO Auto-generated constructor stub
}
public static void GetInt(){
System.out.println(i);
}
}
這個類中,每初始化一次它的static 變量i都會加1,那麼當我們聲明瞭多個對象後來看一下每次聲明後i的變化
package david;
public class TestMain {
/**
* @param args
*/
public static void main(String[] args) {
Person1.GetInt();
Person1 p1_0=new Person1();
Person1 p1_1=new Person1();
Person1 p1_2=new Person1();
Person1.GetInt();
Person1 p1_3=new Person1();
p1_3.GetInt();
p1_2.GetInt();
Person1 p1_4=new Person1();
Person1.GetInt();
}
}
運行結果實:0,3,4,4,5。
另外還可在多個地方調用getInt()方法,就可以更多的瞭解static這個東西了