第一:可以修饰变量,static修饰的变量就是静态变量,可以类名直接调用(类名.静态变量),方便;也可以对象调用,不过不推荐。
第二:可以修饰方法,static修饰的方法,也可以类名.方法名直接调用。任何实例都可以调用。
第三:修饰代码块,静态代码块,是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行,每个代码块只会被执行一次。
我就知道这么多了,总的来说1、想要实现对象中的共性数据的对象共享可以用static修饰;2、静态随着类的加载而加载。而且优先于对象存在。所以静态方法只能访问静态成员,不可以访问非静态成员。而且静态方法中不能使用this,super关键字。因为this代表对象,而静态在时,有可能没有对象,所以this无法使用。 |