Static修饰一个变量:
表示这个变量是类范围内的属性,叫类变量;所有类对象共享一个这样的属性。也即是说创建一个对象的时候不会创建用static修饰的变量。
语法如下
访问控制符 + static + 变量类型 +变量名;
使用方法
类名.类变量名;
使用案例:
对象计数器
public static int objCounter =0;
puplic CounterObject()
{
objCounter++;
}
修饰一个方法
用static修饰的方法叫类方法,也是类范围内的方法,可以在没有创建对象的时候就调用。语法如下
方法的访问控制符 + static + 返回值类型 +方法名 +(参数列表)
使用方式:
类名.方法名;
注意事项:
静态方法里面只能使用方法内的局部变量,方法的参数,静态变量,静态方法;也就是说不能访问或调用非静态变量和非静态方法。同样不能用this指向对象的关键字,用super指向父类的关键字来访问非静态方法和变量。
但是在成员方法里面是可以调用静态方法的。
非静态方法:通过指向对象的引用调用的方法,所以非静态方法可以操作调用它的对象内的实例变量(成员变量)。
静态方法:通过类名调用的,所以无法操作类的对象的实例变量,所以只能访问静态变量和静态方法。静态方法的数据不需要从对象中获取。
在JAVA中调用一个方法,其实就是调用方法里面的代码帮我处理数据。