最近回顾了一下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这个东西了