關於static聲明變量

 

最近回顧了一下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();

       }

}

運行結果實:03445

另外還可在多個地方調用getInt()方法,就可以更多的瞭解static這個東西了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章