静态字段和静态方法
在一个class中定义的字段叫做实例字段,其特点是灭个实力都有独立的字段,各个实例的同名字段互不影响。
还有一种字段是被static修饰着的,称之为静态字段。实例字段在每个实例中都会有自己的一片空间,而静态字段只有一个空间,所有的实例都会共享该字段。
对于静态字段来说,无论修改那个实例的静态字段,效果都是一样的,所有实例的字段都被修改了。
class Exercise{
public static void main(String[] args) {
Person ming =new Person("xiao ming",12);
Person hong =new Person("xiao hong",15);
ming.number=88;
System.out.println(hong.number);
//给小明的成绩赋值,但是输出小红的成绩看看
hong.number=99;
System.out.println(ming.number);
//给小红的成绩赋值,看看结果中小明的成绩是否发生了改变
}
}
class Person{
public String name;
public int age;
public static int number;
//把number定义为静态的变量
public Person(String name,int age)
{
this.name=name;
this.number=number;
}
}
有静态字段,就有静态方法。同样的被static修饰的方法就叫做静态方法。调用实例方法时必须有一个实例变量,但是调用静态方法就不需要,直接通过类名就可以调用。就类似于其他编程语言中的函数。
class Exercise{
public static void main(String[] args) {
Person.setNumber(99);
System.out.println(Person.number);
}
}
class Person{
public static int number;
//把number定义为静态的变量
public static int setNumber(int value)
{
number=value;
}
}