修饰变量
static修饰的变量是类变量。static修饰的变量属于整个类,类的多个对象共享一个成员值(也就是说类的多个对象中,其中一个对象修改了该变量的值,其他对象调用该变量的值都是修改后的值)。该变量在类被加载时创建,可以通过类名+变量名的方式调用。
public class Demo{
public static int a=8;
}
修饰方法
main方法就是一个静态方法,是程序的入口。调用静态方法时,可以使用类名调用,不建议使用对象调用。
public class Demo{
public static void main(String[] args){
Demo.add(2,3);//类名直接调用静态方法
}
public static void add(int a,int b){
int c=a+b;
System.out.printf("两个数的和为%d",c);
}
}
注意:
- 同类方法可以互相调用,普通成员方法可以调用静态方法,静态方法不能调用普通成员方法。
- 普通成员方法可以直接访问同一个类中的成员方法和静态变量。
- 静态方法可以调用同一个类中的静态变量,但不能调用成员变量。
修饰代码块
静态代码块在类加载时执行,并且只执行一次,静态代码块只能给静态变量赋初值。
public static int b;
static{
b=9;
}